├── .gitignore ├── README.md ├── back_end ├── app.py ├── db.py ├── handler.py └── requirements.txt ├── data ├── relation.csv ├── 专辑.csv ├── 人物.csv └── 音乐作品.csv └── front_end ├── .eslintrc.cjs ├── .gitignore ├── .vscode └── extensions.json ├── README.md ├── index.html ├── package-lock.json ├── package.json ├── public └── favicon.ico ├── src ├── App.vue ├── assets │ └── main.css ├── components │ └── MyHeader.vue ├── main.js ├── router │ └── index.js └── views │ ├── IntroView.vue │ └── QueryView.vue └── vite.config.js /.gitignore: -------------------------------------------------------------------------------- 1 | __pycache__ 2 | .DS_Store 3 | 4 | venv 5 | node_modules 6 | 7 | ignore 8 | test 9 | 10 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # 知识图谱应用 2 | 3 | ## 项目介绍 4 | 5 | 周杰伦(Jay Chou),1979年1月18日出生于台湾省,祖籍福建省福建省泉州市永春县,中国台湾流行乐男歌手、音乐人、演员、导演、编剧,曾获金马奖、金像奖最佳新人奖、金曲奖最佳作曲人奖,连续三年获世界音乐大奖中国区最畅销艺人奖,曾于2003年成为美国《时代周刊》封面人物,2012年登福布斯中国名人榜榜首。周杰伦于2000年发布第一张个人专辑《Jay》正式出道,出道至今已发布27张专辑,300多首歌曲,《七里香》、《听妈妈的话》、《青花瓷》等耳熟能详的歌曲陪伴一代又一代人的青春岁月。 6 | 7 | 本项目尝试对周杰伦出道以来参与过的所有歌曲作品、专辑以及合作歌手、作词人进行关系分析,将这些信息组织成三元组构建知识图谱,并基于知识图谱实现一个有关周杰伦歌曲的在线检索系统。 8 | 9 | 我们首先利用爬虫技术爬取有关周杰伦歌曲信息的文本描述,利用知识图谱抽取工具DeepKE抽取文本描述中的实体和关系,并将这些信息组织成三元组存入.csv格式文件中,然后使用非关系型数据库neo4j搭建知识图谱。最后,我们基于python的轻量级后端开发框架flask和前端框架Vue实现了一个基于知识图谱的在线检索系统。 10 | 11 | ## 技术栈 12 | 13 | 前端采用Vue框架,并利用bootstrap, axios 14 | 15 | 后端采用python和Flask框架 16 | 17 | 数据库neo4j 18 | 19 | ## 运行 20 | 21 | ### 前端 22 | 23 | /font_end文件夹 24 | 25 | ``` 26 | cd 27 | npm install 28 | npm run dev 29 | ``` 30 | 31 | ### 后端 32 | 33 | /back_end文件夹 34 | 35 | 创建虚拟环境并开启 36 | 37 | ``` 38 | python3 -m venv venv 39 | source ./venv/bin/activate 40 | ``` 41 | 42 | 安装python依赖 43 | 44 | ``` 45 | pip install -r requirements.txt 46 | ``` 47 | 48 | 开启服务器 49 | 50 | ``` 51 | $ python app.py 52 | ``` 53 | 54 | 数据库目前连接的是neo4j云数据库 55 | 56 | ## 功能 57 | 58 | 支持的问句模版: 59 | 60 | ``` 61 | ===== 匹配:歌曲 ===== 62 | 1. 歌曲兰亭序所属的音乐专辑是?——魔杰座 63 | pattern='歌曲(.+)所属的音乐专辑是' 64 | 2. 歌曲兰亭序的作词人是?——方文山 65 | pattern='歌曲(.+)的作词人是' 66 | 3. 演唱兰亭序的歌手是?——周杰伦 67 | pattern='演唱(.+)的歌手是' 68 | 69 | ===== 匹配:专辑 ===== 70 | 1. 专辑魔杰座包含的歌曲是?——展示所有 71 | pattern='专辑(.+)包含的歌曲是' 72 | 73 | ===== 匹配:人物 ===== 74 | 1. 周杰伦演唱的歌曲有?——展示10条 75 | pattern='(.+)演唱的歌曲有' 76 | 2. 方文山作词的歌曲有?——展示10条 77 | pattern='(.+)作词的歌曲有' 78 | 3. 周杰伦合作过的人有?——展示10条 79 | pattern='(.+)合作过的人有' 80 | ``` 81 | 82 | 问句模版和对应的数据库查询语句: 83 | 84 | ``` 85 | patterns = [ 86 | '歌曲(.+)所属的音乐专辑是', 87 | '歌曲(.+)的作词人是', 88 | '演唱(.+)的歌手是', 89 | '专辑(.+)包含的歌曲是', 90 | '(.+)演唱的歌曲有', 91 | '(.+)作词的歌曲有', 92 | '(.+)合作过的人有' 93 | ] 94 | 95 | queries = [ 96 | "MATCH (a:作品{name:$val})-[:所属专辑]->(b:专辑) RETURN b.name AS name", 97 | "MATCH (a:作品{name:$val})-[:作词]->(b:人物) RETURN b.name AS name", 98 | "MATCH (a:作品{name:$val})-[:歌手]->(b:人物) RETURN b.name AS name", 99 | "MATCH (a:专辑{name:$val})<-[:所属专辑]-(b:作品) RETURN b.name AS name", 100 | "MATCH (a:人物{name:$val})<-[:歌手]-(b:作品) RETURN b.name AS name LIMIT 10", 101 | "MATCH (a:人物{name:$val})<-[:作词]->(b:作品) RETURN b.name AS name LIMIT 10", 102 | "MATCH (a:人物{name:$val})-[:合作]->(b:人物) RETURN b.name AS name LIMIT 10" 103 | ] 104 | ``` 105 | 106 | 107 | 108 | -------------------------------------------------------------------------------- /back_end/app.py: -------------------------------------------------------------------------------- 1 | # coding=utf-8 2 | from flask import Flask, request, jsonify 3 | from flask_cors import CORS # 允许跨域访问 4 | 5 | from handler import query_handler 6 | 7 | app = Flask(__name__) 8 | CORS(app) 9 | 10 | def get_guery(): 11 | pass 12 | 13 | @app.route('/') 14 | def index(): 15 | return 'server running' 16 | 17 | # 返回数据即可 18 | @app.route('/query', methods=['GET', 'POST']) 19 | def query(): 20 | if request.method == 'POST': 21 | # 当使用Ajax传递,post的数据其实是一个FormData 22 | # question = request.form["question"] 23 | # axios则是一个PayLoad 24 | question = request.get_json()["question"] 25 | return query_handler(question) 26 | 27 | 28 | if __name__ == "__main__": 29 | app.run(port=5001, debug=True) -------------------------------------------------------------------------------- /back_end/db.py: -------------------------------------------------------------------------------- 1 | # coding=utf-8 2 | # 数据库相关操作 3 | from neo4j import GraphDatabase 4 | 5 | NEO4J_URI='neo4j+s://9ffc7680.databases.neo4j.io' 6 | NEO4J_USERNAME='neo4j' 7 | NEO4J_PASSWORD='RaEFtVVpHHJv8ISDxL12tKFl_vSVR03nECMckTM7jLE' 8 | AURA_INSTANCENAME='Instance01' 9 | 10 | 11 | # 建立数据库的连接 12 | def get_db(): 13 | db = GraphDatabase.driver(NEO4J_URI, auth=(NEO4J_USERNAME, NEO4J_PASSWORD)) 14 | db.verify_connectivity() 15 | return db 16 | 17 | def close_db(db): 18 | db.close() 19 | 20 | def test_query(db): 21 | query = ''' 22 | MATCH (p:人物{name: $person_name}) 23 | RETURN p.name AS name 24 | ''' 25 | with db.session(database="neo4j") as session: 26 | result = session.run(query, person_name="周杰伦") 27 | # print(result.keys()) 28 | # res = [record["p"] for record in result] 29 | print(result.values("name")) 30 | return 31 | 32 | if __name__ == "__main__": 33 | db = get_db() 34 | test_query(db) 35 | close_db(db) 36 | print('done') 37 | 38 | -------------------------------------------------------------------------------- /back_end/handler.py: -------------------------------------------------------------------------------- 1 | # coding=utf-8 2 | from db import get_db, close_db 3 | import re 4 | 5 | patterns = [ 6 | '歌曲(.+)所属的音乐专辑是', 7 | '歌曲(.+)的作词人是', 8 | '演唱(.+)的歌手是', 9 | '专辑(.+)包含的歌曲是', 10 | '(.+)演唱的歌曲有', 11 | '(.+)作词的歌曲有', 12 | '(.+)合作过的人有' 13 | ] 14 | 15 | queries = [ 16 | "MATCH (a:作品{name:$val})-[:所属专辑]->(b:专辑) RETURN b.name AS name LIMIT 1", 17 | "MATCH (a:作品{name:$val})-[:作词]->(b:人物) RETURN b.name AS name LIMIT 1", 18 | "MATCH (a:作品{name:$val})-[:歌手]->(b:人物) RETURN b.name AS name LIMIT 1", 19 | "MATCH (a:专辑{name:$val})<-[:所属专辑]-(b:作品) RETURN b.name AS name", 20 | "MATCH (a:人物{name:$val})<-[:歌手]-(b:作品) RETURN b.name AS name LIMIT 10", 21 | "MATCH (a:人物{name:$val})<-[:作词]->(b:作品) RETURN b.name AS name LIMIT 10", 22 | "MATCH (a:人物{name:$val})-[:合作]->(b:人物) RETURN b.name AS name LIMIT 10" 23 | ] 24 | 25 | def query_handler(question): 26 | print("问题:", question) 27 | for index, pattern in enumerate(patterns): 28 | matchObj = re.match(pattern, question) 29 | if matchObj: 30 | print("匹配成功 pattern is: ", pattern) 31 | val = matchObj.group(1) 32 | query = queries[index] 33 | # 查询数据库 34 | db = get_db() 35 | with db.session(database="neo4j") as session: 36 | result = session.run(query, val=val) 37 | rows = result.values('name') 38 | rows = [row[0] for row in rows] 39 | print("查询结果:", rows) 40 | close_db(db) 41 | return { 42 | "state": 0, 43 | "data": rows, 44 | "msg": "查询成功" 45 | } 46 | # 没有匹配的pattern 47 | print("匹配失败") 48 | return { 49 | "state": 1, 50 | "msg": "查询失败,没有匹配的问句模版" 51 | } 52 | 53 | if __name__ == "__main__": 54 | query_handler('歌曲兰亭序所属的音乐专辑是') 55 | query_handler('歌曲兰亭序的作词人是') 56 | query_handler('演唱兰亭序的歌手是') 57 | query_handler('专辑魔杰座包含的歌曲是') 58 | query_handler('周杰伦演唱的歌曲有') 59 | query_handler('方文山作词的歌曲有') 60 | query_handler('周杰伦合作过的人有') 61 | -------------------------------------------------------------------------------- /back_end/requirements.txt: -------------------------------------------------------------------------------- 1 | click==8.1.3 2 | Flask==2.2.2 3 | Flask-Cors==3.0.10 4 | importlib-metadata==6.0.0 5 | itsdangerous==2.1.2 6 | Jinja2==3.1.2 7 | MarkupSafe==2.1.1 8 | neo4j==5.4.0 9 | neo4j-driver==5.4.0 10 | pytz==2022.7.1 11 | six==1.16.0 12 | Werkzeug==2.2.2 13 | zipp==3.11.0 14 | -------------------------------------------------------------------------------- /data/relation.csv: -------------------------------------------------------------------------------- 1 | id,Column1,Column2,Column3 2 | 1,Dare for more,周杰伦,歌手 3 | 2,Dare for more,蔡依林,歌手 4 | 3,Dare for more,百事音乐风云榜,所属专辑 5 | 4,周杰伦,百事音乐风云榜,专辑 6 | 5,蔡依林,百事音乐风云榜,专辑 7 | 6,Mine Mine,惊叹号,所属专辑 8 | 7,Now You See Me,周杰伦,歌手 9 | 8,Now You See Me,方文山,作词 10 | 9,Now You See Me,周杰伦的床边故事,所属专辑 11 | 10,周杰伦,周杰伦的床边故事,专辑 12 | 11,方文山,周杰伦的床边故事,作词 13 | 12,阿爸,周杰伦,歌手 14 | 13,阿爸,洪荣宏,歌手 15 | 14,阿爸,方文山,作词 16 | 15,阿爸,恋花,所属专辑 17 | 16,恋花,周杰伦,歌手 18 | 17,洪荣宏,方文山,作词 19 | 18,恋花,洪荣宏,歌手 20 | 19,方文山,恋花,作词 21 | 20,爱的飞行日记,周杰伦,歌手 22 | 21,爱的飞行日记,杨瑞代,歌手 23 | 22,爱的飞行日记,方文山,作词 24 | 23,爱的飞行日记,跨时代,所属专辑 25 | 24,周杰伦,方文山,作词 26 | 25,跨时代,周杰伦,歌手 27 | 26,杨瑞代,方文山,作词 28 | 27,跨时代,杨瑞代,歌手 29 | 28,方文山,跨时代,作词 30 | 29,爱你没差,周杰伦,歌手 31 | 30,爱你没差,黄淩嘉,作词 32 | 31,爱你没差,12新作,所属专辑 33 | 32,周杰伦,黄淩嘉,作词 34 | 33,12新作,周杰伦,歌手 35 | 34,黄淩嘉,12新作,作词 36 | 35,爱情废柴,周杰伦,歌手 37 | 36,爱情废柴,周杰伦的床边故事,所属专辑 38 | 37,周杰伦的床边故事,周杰伦,歌手 39 | 38,爱情悬崖,周杰伦,歌手 40 | 39,爱情悬崖,徐若瑄,作词 41 | 40,爱情悬崖,叶惠美,所属专辑 42 | 41,周杰伦,徐若瑄,作词 43 | 42,叶惠美,周杰伦,歌手 44 | 43,徐若瑄,叶惠美,作词 45 | 44,爱在西元前,周杰伦,歌手 46 | 45,爱在西元前,方文山,作词 47 | 46,爱在西元前,范特西,所属专辑 48 | 47,范特西,周杰伦,歌手 49 | 48,方文山,范特西,作词 50 | 49,安静,周杰伦,歌手 51 | 50,安静,范特西,所属专辑 52 | 51,暗号,周杰伦,歌手 53 | 52,暗号,许世昌,作词 54 | 53,暗号,八度空间,所属专辑 55 | 54,周杰伦,许世昌,作词 56 | 55,八度空间,周杰伦,歌手 57 | 56,爸,我回来了,范特西,所属专辑 58 | 57,白色风车,周杰伦,歌手 59 | 58,白色风车,依然范特西,所属专辑 60 | 59,周杰伦,依然范特西,专辑 61 | 60,半岛铁盒,周杰伦,歌手 62 | 61,半岛铁盒,八度空间,所属专辑 63 | 62,半兽人,周杰伦,歌手 64 | 63,半兽人,方文山,作词 65 | 64,半兽人,八度空间,所属专辑 66 | 65,本草纲目,周杰伦,歌手 67 | 66,本草纲目,方文山,作词 68 | 67,本草纲目,依然范特西,所属专辑 69 | 68,依然范特西,周杰伦,歌手 70 | 69,方文山,依然范特西,作词 71 | 70,比较大的大提琴,周杰伦,歌手 72 | 71,比较大的大提琴,梁心颐,歌手 73 | 72,比较大的大提琴,杨瑞代,歌手 74 | 73,比较大的大提琴,方文山,作词 75 | 74,比较大的大提琴,12新作,所属专辑 76 | 75,梁心颐,方文山,作词 77 | 76,12新作,梁心颐,歌手 78 | 77,12新作,杨瑞代,歌手 79 | 78,不爱我就拉倒,周杰伦,歌手 80 | 79,不爱我就拉倒,宋健彰,作词 81 | 80,不爱我就拉倒,最伟大的作品,所属专辑 82 | 81,周杰伦,宋健彰,作词 83 | 82,最伟大的作品,周杰伦,歌手 84 | 83,不该,周杰伦,歌手 85 | 84,不该,张惠妹,歌手 86 | 85,不该,方文山,作词 87 | 86,不该,周杰伦的床边故事,所属专辑 88 | 87,张惠妹,方文山,作词 89 | 88,周杰伦的床边故事,张惠妹,歌手 90 | 89,布拉格广场,蔡依林,歌手 91 | 90,布拉格广场,周杰伦,歌手 92 | 91,布拉格广场,看我72变,所属专辑 93 | 92,看我72变,蔡依林,歌手 94 | 93,看我72变,周杰伦,歌手 95 | 94,彩虹,周杰伦,歌手 96 | 95,彩虹,我很忙,所属专辑 97 | 96,我很忙,周杰伦,歌手 98 | 97,超跑女神,周杰伦,歌手 99 | 98,超跑女神,方文山,作词 100 | 99,超跑女神,惊叹号,所属专辑 101 | 100,周杰伦,惊叹号,歌手 102 | 101,超人不会飞,周杰伦,歌手 103 | 102,超人不会飞,跨时代,所属专辑 104 | 103,扯,周杰伦,歌手 105 | 104,扯,方文山,作词 106 | 105,扯,我很忙,所属专辑 107 | 106,方文山,我很忙,作词 108 | 107,床边故事,周杰伦,歌手 109 | 108,床边故事,方文山,作词 110 | 109,床边故事,周杰伦的床边故事,所属专辑 111 | 110,打架舞,天台爱情,所属专辑 112 | 111,大笨钟,周杰伦,歌手 113 | 112,大笨钟,12新作,所属专辑 114 | 113,刀马旦,李玟,歌手 115 | 114,刀马旦,方文山,作词 116 | 115,刀马旦,Promise,所属专辑 117 | 116,李玟,方文山,作词 118 | 117,李玟,Promise,歌手 119 | 118,方文山,Promise,作词 120 | 119,倒带,周杰伦,歌手 121 | 120,倒带,方文山,作词 122 | 121,稻香,周杰伦,歌手 123 | 122,稻香,魔杰座,所属专辑 124 | 123,周杰伦,魔杰座,歌手 125 | 124,等你下课,周杰伦,作词 126 | 125,等你下课,杨瑞代,歌手 127 | 126,等你下课,最伟大的作品,所属专辑 128 | 127,杨瑞代,最伟大的作品,歌手 129 | 128,斗牛,周杰伦,歌手 130 | 129,斗牛,方文山,作词 131 | 130,斗牛,Jay,所属专辑 132 | 131,周杰伦,Jay,歌手 133 | 132,方文山,Jay,作词 134 | 133,断了的弦,周杰伦,歌手 135 | 134,断了的弦,方文山,作词 136 | 135,断了的弦,寻找周杰伦,所属专辑 137 | 136,周杰伦,寻找周杰伦,歌手 138 | 137,方文山,寻找周杰伦,作词 139 | 138,发如雪,周杰伦,歌手 140 | 139,发如雪,方文山,作词 141 | 140,发如雪,十一月的萧邦,所属专辑 142 | 141,周杰伦,十一月的萧邦,歌手 143 | 142,方文山,十一月的萧邦,作词 144 | 143,反方向的钟,周杰伦,歌手 145 | 144,反方向的钟,方文山,作词 146 | 145,反方向的钟,Jay,所属专辑 147 | 146,分裂,周杰伦,歌手 148 | 147,分裂,八度空间,所属专辑 149 | 148,枫,周杰伦,歌手 150 | 149,枫,宋健彰,作词 151 | 150,枫,11月的萧邦,所属专辑 152 | 151,周杰伦,11月的萧邦,歌手 153 | 152,宋健彰,11月的萧邦,作词 154 | 153,告白气球,周杰伦,歌手 155 | 154,告白气球,方文山,作词 156 | 155,告白气球,周杰伦的床边故事,所属专辑 157 | 156,搁浅,周杰伦,歌手 158 | 157,搁浅,宋健彰,作词 159 | 158,搁浅,七里香,所属专辑 160 | 159,周杰伦,七里香,歌手 161 | 160,宋健彰,七里香,作词 162 | 161,给我一首歌的时间,周杰伦,歌手 163 | 162,给我一首歌的时间,魔杰座,所属专辑 164 | 163,公公偏头痛,周杰伦,歌手 165 | 164,公公偏头痛,方文山,作词 166 | 165,公公偏头痛,12新作,所属专辑 167 | 166,公主病,周杰伦,歌手 168 | 167,公主病,惊叹号,所属专辑 169 | 168,狗仔舞,周杰伦,作词 170 | 169,狗仔舞,天台 声带,歌手 171 | 170,轨迹,周杰伦,歌手 172 | 171,轨迹,黄俊郎,作词 173 | 172,轨迹,寻找周杰伦,所属专辑 174 | 173,周杰伦,黄俊郎,作词 175 | 174,黄俊郎,寻找周杰伦,作词 176 | 175,海盗,陈镇川,作词 177 | 176,海盗,蔡依林,歌手 178 | 177,海盗,城堡,所属专辑 179 | 178,周杰伦,陈镇川,作词 180 | 179,陈镇川,城堡,作词 181 | 180,蔡依林,城堡,歌手 182 | 181,好久不见,周杰伦,歌手 183 | 182,好久不见,跨时代,所属专辑 184 | 183,黑色毛衣,周杰伦,歌手 185 | 184,黑色毛衣,十一月的萧邦,所属专辑 186 | 185,黑色幽默,周杰伦,歌手 187 | 186,黑色幽默,Jay,所属专辑 188 | 187,红尘客栈,周杰伦,歌手 189 | 188,红尘客栈,方文山,作词 190 | 189,红尘客栈,12新作,所属专辑 191 | 190,方文山,12新作,作词 192 | 191,红模仿,周杰伦,歌手 193 | 192,红模仿,依然范特西,所属专辑 194 | 193,花海,魔杰座,所属专辑 195 | 194,古小力,黄淩嘉,作词 196 | 195,画沙,袁咏琳,歌手 197 | 196,画沙,周杰伦,歌手 198 | 197,画沙,方文山,作词 199 | 198,画沙,袁咏琳 Cindy,所属专辑 200 | 199,袁咏琳,方文山,作词 201 | 200,袁咏琳,袁咏琳 Cindy,歌手 202 | 201,周杰伦,袁咏琳 Cindy,歌手 203 | 202,方文山,袁咏琳 Cindy,作词 204 | 203,黄金甲,周杰伦,歌手 205 | 204,黄金甲,方文山,作词 206 | 205,回到过去,周杰伦,歌手 207 | 206,回到过去,刘畊宏,作词 208 | 207,回到过去,八度空间,所属专辑 209 | 208,周杰伦,刘畊宏,作词 210 | 209,刘畊宏,八度空间,作词 211 | 210,霍元甲,周杰伦,歌手 212 | 211,霍元甲,方文山,作词 213 | 212,简单爱,周杰伦,歌手 214 | 213,简单爱,徐若瑄,作词 215 | 214,简单爱,范特西,所属专辑 216 | 215,徐若瑄,范特西,作词 217 | 216,将军,周杰伦,歌手 218 | 217,将军,黄俊郎,作词 219 | 218,将军,七里香,所属专辑 220 | 219,黄俊郎,七里香,作词 221 | 220,借口,周杰伦,歌手 222 | 221,借口,七里香,所属专辑 223 | 222,惊叹号,周杰伦,歌手 224 | 223,惊叹号,方文山,作词 225 | 224,惊叹号,惊叹号!,所属专辑 226 | 225,周杰伦,惊叹号!,歌手 227 | 226,方文山,惊叹号!,作词 228 | 227,菊花台,方文山,作词 229 | 228,菊花台,依然范特西,所属专辑 230 | 229,开不了口,周杰伦,歌手 231 | 230,开不了口,徐若瑄,作词 232 | 231,开不了口,范特西,所属专辑 233 | 232,可爱女人,周杰伦,歌手 234 | 233,可爱女人,徐若瑄,作词 235 | 234,可爱女人,Jay,所属专辑 236 | 235,徐若瑄,Jay,作词 237 | 236,跨时代,周杰伦,歌手 238 | 237,天台爱情,快门慢舞,所属专辑 239 | 238,快门慢舞,周杰伦,歌手 240 | 239,快门慢舞,黄俊郎,歌手 241 | 240,快门慢舞,弹头,歌手 242 | 241,快门慢舞,李心艾,歌手 243 | 242,黄俊郎,弹头,作词 244 | 243,困兽之斗,周杰伦,歌手 245 | 244,困兽之斗,刘畊宏,作词 246 | 245,困兽之斗,七里香,所属专辑 247 | 246,刘畊宏,七里香,作词 248 | 247,兰亭序,周杰伦,歌手 249 | 248,兰亭序,方文山,作词 250 | 249,兰亭序,魔杰座,所属专辑 251 | 250,方文山,魔杰座,作词 252 | 251,蓝色风暴,周杰伦,歌手 253 | 252,蓝色风暴,方文山,作词 254 | 253,蓝色风暴,十一月的萧邦,所属专辑 255 | 254,浪漫手机,周杰伦,歌手 256 | 255,浪漫手机,方文山,作词 257 | 256,浪漫手机,11月的萧邦,所属专辑 258 | 257,方文山,11月的萧邦,作词 259 | 258,疗伤烧肉粽,周杰伦,歌手 260 | 259,疗伤烧肉粽,惊叹号,所属专辑 261 | 260,流浪诗人,周杰伦,歌手 262 | 261,流浪诗人,杨瑞代,歌手 263 | 262,流浪诗人,方文山,作词 264 | 263,流浪诗人,魔杰座,所属专辑 265 | 264,杨瑞代,魔杰座,歌手 266 | 265,龙卷风,周杰伦,歌手 267 | 266,龙卷风,徐若瑄,作词 268 | 267,龙卷风,Jay,所属专辑 269 | 268,龙拳,周杰伦,歌手 270 | 269,龙拳,方文山,作词 271 | 270,龙拳,八度空间,所属专辑 272 | 271,方文山,八度空间,作词 273 | 272,龙战骑士,周杰伦,歌手 274 | 273,龙战骑士,方文山,作词 275 | 274,龙战骑士,魔杰座,所属专辑 276 | 275,乱舞春秋,周杰伦,歌手 277 | 276,乱舞春秋,方文山,作词 278 | 277,乱舞春秋,七里香,所属专辑 279 | 278,方文山,七里香,作词 280 | 279,麦芽糖,周杰伦,歌手 281 | 280,麦芽糖,方文山,作词 282 | 281,麦芽糖,十一月的萧邦,所属专辑 283 | 282,美人鱼,周杰伦,歌手 284 | 283,美人鱼,黄婕熙,作词 285 | 284,美人鱼,哎呦,不错哦,所属专辑 286 | 285,周杰伦,黄婕熙,作词 287 | 286,周杰伦,哎呦,不错哦,歌手 288 | 287,罗宇轩,黄婕熙,作词 289 | 288,黄婕熙,哎呦,不错哦,作词 290 | 289,梦想启动,周杰伦,歌手 291 | 290,梦想启动,12新作,所属专辑 292 | 291,迷迭香,周杰伦,歌手 293 | 292,迷迭香,方文山,作词 294 | 293,迷迭香,依然范特西,所属专辑 295 | 294,迷魂曲,周杰伦,歌手 296 | 295,迷魂曲,方文山,作词 297 | 296,迷魂曲,惊叹号,所属专辑 298 | 297,方文山,惊叹号,作词 299 | 298,米兰的小铁匠,周杰伦,歌手 300 | 299,米兰的小铁匠,方文山,作词 301 | 300,米兰的小铁匠,八度空间,所属专辑 302 | 301,秘密花园,周杰伦,歌手 303 | 302,免费教学录影带,周杰伦,歌手 304 | 303,免费教学录影带,黄俊郎,作词 305 | 304,免费教学录影带,跨时代,所属专辑 306 | 305,黄俊郎,跨时代,作词 307 | 306,明明就,方文山,作词 308 | 307,明明就,12新作,所属专辑 309 | 308,魔术先生,周杰伦,歌手 310 | 309,魔术先生,魔杰座,所属专辑 311 | 310,哪里都是你,周杰伦,歌手 312 | 311,哪里都是你,12新作,所属专辑 313 | 312,你比从前快乐,周杰伦,歌手 314 | 313,你比从前快乐,方文山,作词 315 | 314,你比从前快乐,范特西,所属专辑 316 | 315,你好吗,周杰伦,歌手 317 | 316,你好吗,罗宇轩,作词 318 | 317,你好吗,惊叹号,所属专辑 319 | 318,周杰伦,罗宇轩,作词 320 | 319,李汪哲,罗宇轩,作词 321 | 320,罗宇轩,惊叹号,作词 322 | 321,你是我的OK绷,浪花兄弟,所属专辑 323 | 322,你是我的OK绷,周杰伦,歌手 324 | 323,你是我的OK绷,邱凯伟,歌手 325 | 324,浪花兄弟,周杰伦,歌手 326 | 325,浪花兄弟,邱凯伟,歌手 327 | 326,浪花兄弟,杨常青,歌手 328 | 327,你听得到,周杰伦,歌手 329 | 328,你听得到,曾郁婷,作词 330 | 329,你听得到,叶惠美,所属专辑 331 | 330,周杰伦,曾郁婷,作词 332 | 331,你怎么连话都说不清楚,蔡依林,歌手 333 | 332,你怎么连话都说不清楚,周杰伦,作词 334 | 333,你怎么连话都说不清楚,毛毛,作词 335 | 334,你怎么连话都说不清楚,Lucky Number,所属专辑 336 | 335,蔡依林,毛毛,作词 337 | 336,周杰伦,毛毛,作词 338 | 337,周杰伦,Lucky Number,作词 339 | 338,逆鳞,周杰伦,歌手 340 | 339,逆鳞,黄俊郎,作词 341 | 340,逆鳞,十一月的萧邦,所属专辑 342 | 341,黄俊郎,十一月的萧邦,作词 343 | 342,娘子,周杰伦,歌手 344 | 343,娘子,方文山,作词 345 | 344,娘子,Jay,所属专辑 346 | 345,牛仔很忙,周杰伦,歌手 347 | 346,牛仔很忙,黄俊郎,作词 348 | 347,牛仔很忙,我很忙,所属专辑 349 | 348,黄俊郎,我很忙,作词 350 | 349,懦夫,周杰伦,歌手 351 | 350,懦夫,叶惠美,所属专辑 352 | 351,皮影戏,周杰伦,歌手 353 | 352,皮影戏,唐从圣,作词 354 | 353,皮影戏,惊叹号,所属专辑 355 | 354,周杰伦,唐从圣,作词 356 | 355,唐从圣,惊叹号,作词 357 | 356,漂移,11月的萧邦,所属专辑 358 | 357,蒲公英的约定,周杰伦,歌手 359 | 358,蒲公英的约定,方文山,作词 360 | 359,蒲公英的约定,我很忙,所属专辑 361 | 360,七里香,周杰伦,歌手 362 | 361,骑士精神,蔡依林,歌手 363 | 362,骑士精神,看我72变,所属专辑 364 | 363,千里之外,周杰伦,歌手 365 | 364,千里之外,费玉清,歌手 366 | 365,千里之外,依然范特西,所属专辑 367 | 366,千里之外,回想曲青青校树,所属专辑 368 | 367,周杰伦,回想曲青青校树,歌手 369 | 368,费玉清,依然范特西,歌手 370 | 369,费玉清,回想曲青青校树,歌手 371 | 370,依然范特西,回想曲青青校树,所属专辑 372 | 371,前世情人,周杰伦,歌手 373 | 372,前世情人,黄俊郎,歌手 374 | 373,前世情人,周杰伦的床边故事,所属专辑 375 | 374,黄俊郎,周杰伦的床边故事,所属专辑 376 | 375,乔克叔叔,周杰伦,歌手 377 | 376,乔克叔叔,黄俊郎,作词 378 | 377,乔克叔叔,魔杰座,所属专辑 379 | 378,黄俊郎,魔杰座,作词 380 | 379,窃爱,周杰伦,歌手 381 | 380,窃爱,黄俊郎,作词 382 | 381,窃爱,哎呦,不错哦,所属专辑 383 | 382,黄俊郎,哎呦,不错哦,作词 384 | 383,琴伤,周杰伦,歌手 385 | 384,琴伤,方文山,作词 386 | 385,琴伤,惊叹号,所属专辑 387 | 386,青花瓷,周杰伦,歌手 388 | 387,青花瓷,方文山,作词 389 | 388,青花瓷,我很忙,所属专辑 390 | 389,晴天,叶惠美,所属专辑 391 | 390,忍者,周杰伦,歌手 392 | 391,忍者,方文山,作词 393 | 392,忍者,范特西,所属专辑 394 | 393,三年二班,周杰伦,歌手 395 | 394,三年二班,方文山,作词 396 | 395,三年二班,叶惠美,所属专辑 397 | 396,方文山,叶惠美,作词 398 | 397,傻笑,周杰伦,歌手 399 | 398,傻笑,袁咏琳,歌手 400 | 399,傻笑,方文山,作词 401 | 400,傻笑,12新作,所属专辑 402 | 401,袁咏琳,12新作,歌手 403 | 402,珊瑚海,周杰伦,歌手 404 | 403,珊瑚海,梁心颐,歌手 405 | 404,珊瑚海,方文山,作词 406 | 405,珊瑚海,11月的萧邦,所属专辑 407 | 406,梁心颐,11月的萧邦,歌手 408 | 407,上海一九四三,周杰伦,歌手 409 | 408,上海一九四三,方文山,作词 410 | 409,上海一九四三,范特西,所属专辑 411 | 410,蛇舞,周杰伦,歌手 412 | 411,蛇舞,梁心颐,歌手 413 | 412,蛇舞,黄俊郎,作词 414 | 413,蛇舞,魔杰座,所属专辑 415 | 414,梁心颐,黄俊郎,作词 416 | 415,梁心颐,魔杰座,歌手 417 | 416,时光机,周杰伦,歌手 418 | 417,时光机,方文山,作词 419 | 418,时光机,魔杰座,所属专辑 420 | 419,世界末日,范特西PLUS,所属专辑 421 | 420,世界未末日,周杰伦,歌手 422 | 421,世界未末日,方文山,作词 423 | 422,世界未末日,惊叹号!,所属专辑 424 | 423,手写的从前,周杰伦,歌手 425 | 424,手写的从前,方文山,作词 426 | 425,手写的从前,哎呦,不错哦,所属专辑 427 | 426,方文山,哎呦,不错哦,作词 428 | 427,手语,周杰伦,歌手 429 | 428,手语,12新作,所属专辑 430 | 429,双刀,周杰伦,歌手 431 | 430,双刀,方文山,作词 432 | 431,双刀,叶惠美,所属专辑 433 | 432,双截棍,周杰伦,歌手 434 | 433,双截棍,方文山,作词 435 | 434,双截棍,范特西,所属专辑 436 | 435,水手怕水,周杰伦,歌手 437 | 436,水手怕水,黄俊郎,作词 438 | 437,水手怕水,惊叹号,所属专辑 439 | 438,说好的幸福呢,周杰伦,歌手 440 | 439,说好的幸福呢,方文山,作词 441 | 440,说好的幸福呢,魔杰座,所属专辑 442 | 441,说了再见,周杰伦,歌手 443 | 442,说了再见,黄凌嘉,作词 444 | 443,说了再见,跨时代,所属专辑 445 | 444,周杰伦,黄凌嘉,作词 446 | 445,古小力,黄凌嘉,作词 447 | 446,黄凌嘉,跨时代,作词 448 | 447,说走就走,周杰伦,歌手 449 | 448,说走就走,方文山,作词 450 | 449,说走就走,周杰伦的床边故事,所属专辑 451 | 450,四季列车,周杰伦,歌手 452 | 451,四季列车,方文山,作词 453 | 452,四季列车,12新作,所属专辑 454 | 453,四面楚歌,周杰伦,歌手 455 | 454,四面楚歌,11月的萧邦,所属专辑 456 | 455,算什么男人,周杰伦,歌手 457 | 456,算什么男人,哎呦,不错哦,所属专辑 458 | 457,她的睫毛,周杰伦,歌手 459 | 458,她的睫毛,方文山,作词 460 | 459,她的睫毛,叶惠美,所属专辑 461 | 460,淘汰,陈奕迅,歌手 462 | 461,淘汰,周杰伦,作词 463 | 462,淘汰,认了吧,所属专辑 464 | 463,陈奕迅,认了吧,歌手 465 | 464,梯田,周杰伦,歌手 466 | 465,梯田,叶惠美,所属专辑 467 | 466,天地一斗,周杰伦,歌手 468 | 467,天地一斗,乐酷·概念合辑,所属专辑 469 | 468,周杰伦,乐酷·概念合辑,歌手 470 | 469,天台,天台爱情,所属专辑 471 | 470,天台的月光,周杰伦,歌手 472 | 471,天台的月光,方文山,作词 473 | 472,天台的月光,天台爱情,所属专辑 474 | 473,天涯过客,方文山,作词 475 | 474,天涯过客,哎呦,不错哦,所属专辑 476 | 475,甜甜的,周杰伦,歌手 477 | 476,甜甜的,方文山,作词 478 | 477,甜甜的,我很忙,所属专辑 479 | 478,听爸爸的话,周杰伦,歌手 480 | 479,听爸爸的话,哎呦,不错哦,所属专辑 481 | 480,听见下雨的声音,方文山,作词 482 | 481,听见下雨的声音,魏如昀,歌手 483 | 482,方文山,周杰伦,作词 484 | 483,听妈妈的话,周杰伦,歌手 485 | 484,听妈妈的话,依然范特西,所属专辑 486 | 485,同一种调调,周杰伦,歌手 487 | 486,同一种调调,方文山,作词 488 | 487,同一种调调,叶惠美,所属专辑 489 | 488,土耳其冰淇淋,周杰伦,歌手 490 | 489,土耳其冰淇淋,周杰伦的床边故事,所属专辑 491 | 490,退后,周杰伦,歌手 492 | 491,退后,宋健彰,作词 493 | 492,退后,依然范特西,所属专辑 494 | 493,宋健彰,依然范特西,作词 495 | 494,瓦解,南拳妈妈,歌手 496 | 495,瓦解,弹头,作词 497 | 496,瓦解,宇豪,歌手 498 | 497,瓦解,南拳妈妈的夏天,所属专辑 499 | 498,南拳妈妈,弹头,作词 500 | 499,南拳妈妈,南拳妈妈的夏天,歌手 501 | 500,宇豪,南拳妈妈的夏天,歌手 502 | 501,外婆,周杰伦,歌手 503 | 502,外婆,七里香,所属专辑 504 | 503,完美主义,周杰伦,歌手 505 | 504,完美主义,方文山,作词 506 | 505,完美主义,Jay,所属专辑 507 | 506,威廉古堡,周杰伦,歌手 508 | 507,威廉古堡,方文山,作词 509 | 508,威廉古堡,范特西,所属专辑 510 | 509,蜗牛,许茹芸,歌手 511 | 510,蜗牛,齐,歌手 512 | 511,蜗牛,真爱无敌,所属专辑 513 | 512,许茹芸,真爱无敌,歌手 514 | 513,我不配,周杰伦,歌手 515 | 514,我不配,方文山,作词 516 | 515,我不配,我很忙,所属专辑 517 | 516,我的地盘,周杰伦,歌手 518 | 517,我的地盘,方文山,作词 519 | 518,我的地盘,七里香,所属专辑 520 | 519,我落泪情绪零碎,周杰伦,歌手 521 | 520,我落泪情绪零碎,方文山,作词 522 | 521,我落泪情绪零碎,跨时代,所属专辑 523 | 522,我们在成长,周杰伦,所属专辑 524 | 523,我是如此相信,方文山,作词 525 | 524,我是如此相信,最伟大的作品,所属专辑 526 | 525,我要夏天,周杰伦,歌手 527 | 526,我要夏天,杨瑞代,歌手 528 | 527,我要夏天,哎哟,不错哦,所属专辑 529 | 528,周杰伦,哎哟,不错哦,歌手 530 | 529,杨瑞代,哎哟,不错哦,歌手 531 | 530,乌克丽丽,周杰伦,歌手 532 | 531,乌克丽丽,12新作,所属专辑 533 | 532,屋顶,吴宗宪,歌手 534 | 533,屋顶,温岚,歌手 535 | 534,屋顶,你比从前快乐,所属专辑 536 | 535,屋顶,有点野,所属专辑 537 | 536,吴宗宪,你比从前快乐,歌手 538 | 537,吴宗宪,有点野,歌手 539 | 538,温岚,你比从前快乐,歌手 540 | 539,温岚,有点野,歌手 541 | 540,你比从前快乐,有点野,所属专辑 542 | 541,无双,周杰伦,歌手 543 | 542,无双,方文山,作词 544 | 543,无双,我很忙,所属专辑 545 | 544,嘻哈空姐,周杰伦,歌手 546 | 545,嘻哈空姐,方文山,作词 547 | 546,嘻哈空姐,跨时代,所属专辑 548 | 547,想你就写信,方文山,作词 549 | 548,想你就写信,浪花兄弟,歌手 550 | 549,鞋子特大号,周杰伦,歌手 551 | 550,鞋子特大号,方文山,作词 552 | 551,鞋子特大号,哎呦,不错哦,所属专辑 553 | 552,心雨,周杰伦,歌手 554 | 553,心雨,方文山,作词 555 | 554,心雨,依然范特西,所属专辑 556 | 555,星晴,周杰伦,歌手 557 | 556,星晴,Jay,所属专辑 558 | 557,烟花易冷,方文山,作词 559 | 558,烟花易冷,跨时代,所属专辑 560 | 559,阳光宅男,周杰伦,歌手 561 | 560,阳光宅男,方文山,作词 562 | 561,阳光宅男,我很忙,所属专辑 563 | 562,阳明山,周杰伦,歌手 564 | 563,阳明山,方文山,作词 565 | 564,阳明山,哎呦,不错哦,所属专辑 566 | 565,爷爷泡的茶,周杰伦,歌手 567 | 566,爷爷泡的茶,方文山,作词 568 | 567,爷爷泡的茶,八度空间,所属专辑 569 | 568,夜的第七章,周杰伦,歌手 570 | 569,夜的第七章,潘儿,歌手 571 | 570,夜的第七章,黄俊郎,作词 572 | 571,夜的第七章,依然范特西,所属专辑 573 | 572,潘儿,黄俊郎,作词 574 | 573,潘儿,依然范特西,歌手 575 | 574,黄俊郎,依然范特西,作词 576 | 575,夜曲,周杰伦,歌手 577 | 576,夜曲,方文山,作词 578 | 577,夜曲,11月的萧邦,所属专辑 579 | 578,一点点,周杰伦,歌手 580 | 579,一点点,方文山,作词 581 | 580,一点点,周杰伦的床边故事,所属专辑 582 | 581,一口气全念对,周杰伦,歌手 583 | 582,一口气全念对,方文山,作词 584 | 583,一口气全念对,哎呦,不错哦,所属专辑 585 | 584,一路向北,周杰伦,歌手 586 | 585,一路向北,方文山,作词 587 | 586,一路向北,11月的萧邦,所属专辑 588 | 587,伊斯坦堡,周杰伦,歌手 589 | 588,伊斯坦堡,徐若瑄,作词 590 | 589,伊斯坦堡,Jay,所属专辑 591 | 590,以父之名,周杰伦,歌手 592 | 591,以父之名,叶惠美,所属专辑 593 | 592,印地安老斑鸠,周杰伦,歌手 594 | 593,印地安老斑鸠,方文山,作词 595 | 594,印地安老斑鸠,Jay,所属专辑 596 | 595,英雄,周杰伦的床边故事,所属专辑 597 | 596,雨下一整晚,周杰伦,歌手 598 | 597,雨下一整晚,方文山,作词 599 | 598,雨下一整晚,跨时代,所属专辑 600 | 599,园游会,周杰伦,歌手 601 | 600,园游会,方文山,作词 602 | 601,园游会,七里香,所属专辑 603 | 602,月光,杨瑞代,歌手 604 | 603,月光,给你的情书,所属专辑 605 | 604,杨瑞代,给你的情书,歌手 606 | 605,怎么了,周杰伦,歌手 607 | 606,怎么了,袁咏琳,歌手 608 | 607,怎么了,方文山,作词 609 | 608,怎么了,哎呦,不错哦,所属专辑 610 | 609,袁咏琳,哎呦,不错哦,歌手 611 | 610,止战之殇,周杰伦,歌手 612 | 611,止战之殇,方文山,作词 613 | 612,止战之殇,七里香,所属专辑 614 | 613,周大侠,周杰伦,歌手 615 | 614,周大侠,方文山,作词 616 | 615,周大侠,2007世界巡回演唱会,所属专辑 617 | 616,周杰伦,2007世界巡回演唱会,歌手 618 | 617,方文山,2007世界巡回演唱会,作词 619 | 618,祝我生日快乐,温岚,歌手 620 | 619,祝我生日快乐,温式效应,所属专辑 621 | 620,温岚,温式效应,歌手 622 | 621,周杰伦,温式效应,歌手 623 | 622,自导自演,周杰伦,歌手 624 | 623,自导自演,跨时代,所属专辑 625 | 624,最后的战役,周杰伦,歌手 626 | 625,最后的战役,方文山,作词 627 | 626,最后的战役,八度空间,所属专辑 628 | 627,最长的电影,周杰伦,歌手 629 | 628,最长的电影,我很忙,所属专辑 -------------------------------------------------------------------------------- /data/专辑.csv: -------------------------------------------------------------------------------- 1 | id,专辑名称 2 | 1,依然范特西 3 | 2,惊叹号! 4 | 3,Lucky Number 5 | 4,南拳妈妈的夏天 6 | 5,天台爱情 7 | 6,看我72变 8 | 7,快门慢舞 9 | 8,哎呦,不错哦 10 | 9,有点野 11 | 10,魔杰座 12 | 11,认了吧 13 | 12,给你的情书 14 | 13,回想曲青青校树 15 | 14,十一月的萧邦 16 | 15,周杰伦 17 | 16,寻找周杰伦 18 | 17,12新作 19 | 18,跨时代 20 | 19,袁咏琳 Cindy 21 | 20,城堡 22 | 21,你比从前快乐 23 | 22,Promise 24 | 23,七里香 25 | 24,乐酷·概念合辑 26 | 25,温式效应 27 | 26,范特西 28 | 27,八度空间 29 | 28,浪花兄弟 30 | 29,真爱无敌 31 | 30,周杰伦的床边故事 32 | 31,Jay 33 | 32,范特西PLUS 34 | 33,惊叹号 35 | 34,哎哟,不错哦 36 | 35,最伟大的作品 37 | 36,11月的萧邦 38 | 37,2007世界巡回演唱会 39 | 38,恋花 40 | 39,叶惠美 41 | 40,我很忙 -------------------------------------------------------------------------------- /data/人物.csv: -------------------------------------------------------------------------------- 1 | id,人物列表 2 | 1,许茹芸 3 | 2,罗宇轩 4 | 3,陈奕迅 5 | 4,黄凌嘉 6 | 5,李心艾 7 | 6,弹头 8 | 7,魏如昀 9 | 8,洪荣宏 10 | 9,邱凯伟 11 | 10,娘子 12 | 11,南拳妈妈 13 | 12,黄淩嘉 14 | 13,曾郁婷 15 | 14,浪花兄弟 16 | 15,唐从圣 17 | 16,周杰伦 18 | 17,杨瑞代 19 | 18,杨常青 20 | 19,吴宗宪 21 | 20,黄婕熙 22 | 21,陈镇川 23 | 22,毛毛 24 | 23,方文山 25 | 24,黄俊郎 26 | 25,费玉清 27 | 26,古小力 28 | 27,刘畊宏 29 | 28,张惠妹 30 | 29,袁咏琳 Cindy 31 | 30,宋健彰 32 | 31,李汪哲 33 | 32,许世昌 34 | 33,潘儿 35 | 34,徐若瑄 36 | 35,李玟 37 | 36,宇豪 38 | 37,袁咏琳 39 | 38,梁心颐 40 | 39,蔡依林 -------------------------------------------------------------------------------- /data/音乐作品.csv: -------------------------------------------------------------------------------- 1 | id,所有音乐作品 2 | 1,四面楚歌 3 | 2,双刀 4 | 3,超跑女神 5 | 4,红模仿 6 | 5,免费教学录影带 7 | 6,天地一斗 8 | 7,浪漫手机 9 | 8,白色风车 10 | 9,你好吗 11 | 10,水手怕水 12 | 11,公公偏头痛 13 | 12,红尘客栈 14 | 13,千里之外 15 | 14,天涯过客 16 | 15,甜甜的 17 | 16,听妈妈的话 18 | 17,反方向的钟 19 | 18,米兰的小铁匠 20 | 19,黑色毛衣 21 | 20,爱在西元前 22 | 21,同一种调调 23 | 22,我落泪情绪零碎 24 | 23,晴天 25 | 24,断了的弦 26 | 25,麦芽糖 27 | 26,Mine Mine 28 | 27,发如雪 29 | 28,黄俊郎ahaway 30 | 29,Dare for more 31 | 30,梯田 32 | 31,心雨 33 | 32,以父之名 34 | 33,四季列车 35 | 34,蛇舞 36 | 35,哪里都是你 37 | 36,牛仔很忙 38 | 37,分裂 39 | 38,你怎么连话都说不清楚 40 | 39,天台的月光 41 | 40,土耳其冰淇淋 42 | 41,迷魂曲 43 | 42,印地安老斑鸠 44 | 43,说好的幸福呢 45 | 44,温岚 46 | 45,狗仔舞 47 | 46,花海 48 | 47,淘汰 49 | 48,无双 50 | 49,我的地盘 51 | 50,珊瑚海 52 | 51,说走就走 53 | 52,黑色幽默 54 | 53,刀马旦 55 | 54,爱你没差 56 | 55,傻笑 57 | 56,手语 58 | 57,园游会 59 | 58,本草纲目 60 | 59,开不了口 61 | 60,公主病 62 | 61,蓝色风暴 63 | 62,暗号 64 | 63,乔克叔叔 65 | 64,止战之殇 66 | 65,听爸爸的话 67 | 66,海盗 68 | 67,前世情人 69 | 68,扯 70 | 69,黄金甲 71 | 70,完美主义 72 | 71,菊花台 73 | 72,美人鱼 74 | 73,借口 75 | 74,三年二班 76 | 75,蜗牛 77 | 76,手写的从前 78 | 77,兰亭序 79 | 78,烟花易冷 80 | 79,天台 81 | 80,超人不会飞 82 | 81,不爱我就拉倒 83 | 82,齐 84 | 83,一路向北 85 | 84,屋顶 86 | 85,窃爱 87 | 86,瓦解 88 | 87,漂移 89 | 88,懦夫 90 | 89,黄淩嘉 91 | 90,阳光宅男 92 | 91,星晴 93 | 92,乱舞春秋 94 | 93,夜曲 95 | 94,我们在成长 96 | 95,稻香 97 | 96,爱情悬崖 98 | 97,最后的战役 99 | 98,周大侠 100 | 99,半岛铁盒 101 | 100,比较大的大提琴 102 | 101,斗牛 103 | 102,你是我的OK绷 104 | 103,我不配 105 | 104,梦想启动 106 | 105,霍元甲 107 | 106,半兽人 108 | 107,皮影戏 109 | 108,雨下一整晚 110 | 109,骑士精神 111 | 110,阳明山 112 | 111,寻找周杰伦 113 | 112,伊斯坦堡 114 | 113,上海一九四三 115 | 114,龙战骑士 116 | 115,怎么了 117 | 116,算什么男人 118 | 117,龙拳 119 | 118,枫 120 | 119,想你就写信 121 | 120,威廉古堡 122 | 121,爷爷泡的茶 123 | 122,最长的电影 124 | 123,鞋子特大号 125 | 124,双截棍 126 | 125,床边故事 127 | 126,将军 128 | 127,爱情废柴 129 | 128,倒带 130 | 129,她的睫毛 131 | 130,一点点 132 | 131,彩虹 133 | 132,乌克丽丽 134 | 133,曾郁婷 135 | 134,安静 136 | 135,大笨钟 137 | 136,青花瓷 138 | 137,祝我生日快乐 139 | 138,给你的情书 140 | 139,七里香 141 | 140,琴伤 142 | 141,世界末日 143 | 142,蒲公英的约定 144 | 143,迷迭香 145 | 144,英雄 146 | 145,Now You See Me 147 | 146,嘻哈空姐 148 | 147,我很忙 149 | 148,等你下课 150 | 149,布拉格广场 151 | 150,画沙 152 | 151,逆鳞 153 | 152,爸,我回来了 154 | 153,忍者 155 | 154,世界未末日 156 | 155,我是如此相信 157 | 156,搁浅 158 | 157,自导自演 159 | 158,好久不见 160 | 159,不该 161 | 160,简单爱 162 | 161,月光 163 | 162,爱的飞行日记 164 | 163,南拳妈妈的夏天 165 | 164,叶惠美 166 | 165,告白气球 167 | 166,明明就 168 | 167,时光机 169 | 168,给我一首歌的时间 170 | 169,流浪诗人 171 | 170,百事音乐风云榜 172 | 171,夜的第七章 173 | 172,轨迹 174 | 173,听见下雨的声音 175 | 174,魔术先生 176 | 175,可爱女人 177 | 176,打架舞 178 | 177,困兽之斗 179 | 178,我要夏天 180 | 179,龙卷风 181 | 180,外婆 182 | 181,回到过去 183 | 182,你听得到 184 | 183,一口气全念对 185 | 184,天台 声带 186 | 185,说了再见 187 | 186,秘密花园 188 | 187,阿爸 189 | 188,疗伤烧肉粽 190 | 189,退后 191 | 190,吴宗宪 192 | 191,惊叹号 193 | 192,跨时代 194 | 193,天台爱情 195 | 194,快门慢舞 196 | 195,你比从前快乐 197 | 196,浪花兄弟 198 | 197,七里香 -------------------------------------------------------------------------------- /front_end/.eslintrc.cjs: -------------------------------------------------------------------------------- 1 | /* eslint-env node */ 2 | module.exports = { 3 | root: true, 4 | 'extends': [ 5 | 'plugin:vue/vue3-essential', 6 | 'eslint:recommended' 7 | ], 8 | parserOptions: { 9 | ecmaVersion: 'latest' 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /front_end/.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 | .DS_Store 12 | dist 13 | dist-ssr 14 | coverage 15 | *.local 16 | 17 | /cypress/videos/ 18 | /cypress/screenshots/ 19 | 20 | # Editor directories and files 21 | .vscode/* 22 | !.vscode/extensions.json 23 | .idea 24 | *.suo 25 | *.ntvs* 26 | *.njsproj 27 | *.sln 28 | *.sw? 29 | -------------------------------------------------------------------------------- /front_end/.vscode/extensions.json: -------------------------------------------------------------------------------- 1 | { 2 | "recommendations": ["Vue.volar", "Vue.vscode-typescript-vue-plugin"] 3 | } 4 | -------------------------------------------------------------------------------- /front_end/README.md: -------------------------------------------------------------------------------- 1 | # front_end 2 | 3 | This template should help get you started developing with Vue 3 in Vite. 4 | 5 | ## Recommended IDE Setup 6 | 7 | [VSCode](https://code.visualstudio.com/) + [Volar](https://marketplace.visualstudio.com/items?itemName=Vue.volar) (and disable Vetur) + [TypeScript Vue Plugin (Volar)](https://marketplace.visualstudio.com/items?itemName=Vue.vscode-typescript-vue-plugin). 8 | 9 | ## Customize configuration 10 | 11 | See [Vite Configuration Reference](https://vitejs.dev/config/). 12 | 13 | ## Project Setup 14 | 15 | ```sh 16 | npm install 17 | ``` 18 | 19 | ### Compile and Hot-Reload for Development 20 | 21 | ```sh 22 | npm run dev 23 | ``` 24 | 25 | ### Compile and Minify for Production 26 | 27 | ```sh 28 | npm run build 29 | ``` 30 | 31 | ### Lint with [ESLint](https://eslint.org/) 32 | 33 | ```sh 34 | npm run lint 35 | ``` 36 | -------------------------------------------------------------------------------- /front_end/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | Vite App 8 | 9 | 10 |
11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /front_end/package-lock.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "front_end", 3 | "version": "0.0.0", 4 | "lockfileVersion": 2, 5 | "requires": true, 6 | "packages": { 7 | "": { 8 | "name": "front_end", 9 | "version": "0.0.0", 10 | "dependencies": { 11 | "axios": "^1.2.2", 12 | "bootstrap": "^5.2.3", 13 | "less": "^4.1.3", 14 | "vue": "^3.2.45", 15 | "vue-router": "^4.1.6" 16 | }, 17 | "devDependencies": { 18 | "@vitejs/plugin-vue": "^4.0.0", 19 | "eslint": "^8.22.0", 20 | "eslint-plugin-vue": "^9.3.0", 21 | "vite": "^4.0.0" 22 | } 23 | }, 24 | "node_modules/@babel/parser": { 25 | "version": "7.20.7", 26 | "resolved": "https://registry.npmmirror.com/@babel/parser/-/parser-7.20.7.tgz", 27 | "integrity": "sha512-T3Z9oHybU+0vZlY9CiDSJQTD5ZapcW18ZctFMi0MOAl/4BjFF4ul7NVSARLdbGO5vDqy9eQiGTV0LtKfvCYvcg==", 28 | "bin": { 29 | "parser": "bin/babel-parser.js" 30 | }, 31 | "engines": { 32 | "node": ">=6.0.0" 33 | } 34 | }, 35 | "node_modules/@esbuild/android-arm": { 36 | "version": "0.16.17", 37 | "resolved": "https://registry.npmmirror.com/@esbuild/android-arm/-/android-arm-0.16.17.tgz", 38 | "integrity": "sha512-N9x1CMXVhtWEAMS7pNNONyA14f71VPQN9Cnavj1XQh6T7bskqiLLrSca4O0Vr8Wdcga943eThxnVp3JLnBMYtw==", 39 | "cpu": [ 40 | "arm" 41 | ], 42 | "dev": true, 43 | "optional": true, 44 | "os": [ 45 | "android" 46 | ], 47 | "engines": { 48 | "node": ">=12" 49 | } 50 | }, 51 | "node_modules/@esbuild/android-arm64": { 52 | "version": "0.16.17", 53 | "resolved": "https://registry.npmmirror.com/@esbuild/android-arm64/-/android-arm64-0.16.17.tgz", 54 | "integrity": "sha512-MIGl6p5sc3RDTLLkYL1MyL8BMRN4tLMRCn+yRJJmEDvYZ2M7tmAf80hx1kbNEUX2KJ50RRtxZ4JHLvCfuB6kBg==", 55 | "cpu": [ 56 | "arm64" 57 | ], 58 | "dev": true, 59 | "optional": true, 60 | "os": [ 61 | "android" 62 | ], 63 | "engines": { 64 | "node": ">=12" 65 | } 66 | }, 67 | "node_modules/@esbuild/android-x64": { 68 | "version": "0.16.17", 69 | "resolved": "https://registry.npmmirror.com/@esbuild/android-x64/-/android-x64-0.16.17.tgz", 70 | "integrity": "sha512-a3kTv3m0Ghh4z1DaFEuEDfz3OLONKuFvI4Xqczqx4BqLyuFaFkuaG4j2MtA6fuWEFeC5x9IvqnX7drmRq/fyAQ==", 71 | "cpu": [ 72 | "x64" 73 | ], 74 | "dev": true, 75 | "optional": true, 76 | "os": [ 77 | "android" 78 | ], 79 | "engines": { 80 | "node": ">=12" 81 | } 82 | }, 83 | "node_modules/@esbuild/darwin-arm64": { 84 | "version": "0.16.17", 85 | "resolved": "https://registry.npmmirror.com/@esbuild/darwin-arm64/-/darwin-arm64-0.16.17.tgz", 86 | "integrity": "sha512-/2agbUEfmxWHi9ARTX6OQ/KgXnOWfsNlTeLcoV7HSuSTv63E4DqtAc+2XqGw1KHxKMHGZgbVCZge7HXWX9Vn+w==", 87 | "cpu": [ 88 | "arm64" 89 | ], 90 | "dev": true, 91 | "optional": true, 92 | "os": [ 93 | "darwin" 94 | ], 95 | "engines": { 96 | "node": ">=12" 97 | } 98 | }, 99 | "node_modules/@esbuild/darwin-x64": { 100 | "version": "0.16.17", 101 | "resolved": "https://registry.npmmirror.com/@esbuild/darwin-x64/-/darwin-x64-0.16.17.tgz", 102 | "integrity": "sha512-2By45OBHulkd9Svy5IOCZt376Aa2oOkiE9QWUK9fe6Tb+WDr8hXL3dpqi+DeLiMed8tVXspzsTAvd0jUl96wmg==", 103 | "cpu": [ 104 | "x64" 105 | ], 106 | "dev": true, 107 | "optional": true, 108 | "os": [ 109 | "darwin" 110 | ], 111 | "engines": { 112 | "node": ">=12" 113 | } 114 | }, 115 | "node_modules/@esbuild/freebsd-arm64": { 116 | "version": "0.16.17", 117 | "resolved": "https://registry.npmmirror.com/@esbuild/freebsd-arm64/-/freebsd-arm64-0.16.17.tgz", 118 | "integrity": "sha512-mt+cxZe1tVx489VTb4mBAOo2aKSnJ33L9fr25JXpqQqzbUIw/yzIzi+NHwAXK2qYV1lEFp4OoVeThGjUbmWmdw==", 119 | "cpu": [ 120 | "arm64" 121 | ], 122 | "dev": true, 123 | "optional": true, 124 | "os": [ 125 | "freebsd" 126 | ], 127 | "engines": { 128 | "node": ">=12" 129 | } 130 | }, 131 | "node_modules/@esbuild/freebsd-x64": { 132 | "version": "0.16.17", 133 | "resolved": "https://registry.npmmirror.com/@esbuild/freebsd-x64/-/freebsd-x64-0.16.17.tgz", 134 | "integrity": "sha512-8ScTdNJl5idAKjH8zGAsN7RuWcyHG3BAvMNpKOBaqqR7EbUhhVHOqXRdL7oZvz8WNHL2pr5+eIT5c65kA6NHug==", 135 | "cpu": [ 136 | "x64" 137 | ], 138 | "dev": true, 139 | "optional": true, 140 | "os": [ 141 | "freebsd" 142 | ], 143 | "engines": { 144 | "node": ">=12" 145 | } 146 | }, 147 | "node_modules/@esbuild/linux-arm": { 148 | "version": "0.16.17", 149 | "resolved": "https://registry.npmmirror.com/@esbuild/linux-arm/-/linux-arm-0.16.17.tgz", 150 | "integrity": "sha512-iihzrWbD4gIT7j3caMzKb/RsFFHCwqqbrbH9SqUSRrdXkXaygSZCZg1FybsZz57Ju7N/SHEgPyaR0LZ8Zbe9gQ==", 151 | "cpu": [ 152 | "arm" 153 | ], 154 | "dev": true, 155 | "optional": true, 156 | "os": [ 157 | "linux" 158 | ], 159 | "engines": { 160 | "node": ">=12" 161 | } 162 | }, 163 | "node_modules/@esbuild/linux-arm64": { 164 | "version": "0.16.17", 165 | "resolved": "https://registry.npmmirror.com/@esbuild/linux-arm64/-/linux-arm64-0.16.17.tgz", 166 | "integrity": "sha512-7S8gJnSlqKGVJunnMCrXHU9Q8Q/tQIxk/xL8BqAP64wchPCTzuM6W3Ra8cIa1HIflAvDnNOt2jaL17vaW+1V0g==", 167 | "cpu": [ 168 | "arm64" 169 | ], 170 | "dev": true, 171 | "optional": true, 172 | "os": [ 173 | "linux" 174 | ], 175 | "engines": { 176 | "node": ">=12" 177 | } 178 | }, 179 | "node_modules/@esbuild/linux-ia32": { 180 | "version": "0.16.17", 181 | "resolved": "https://registry.npmmirror.com/@esbuild/linux-ia32/-/linux-ia32-0.16.17.tgz", 182 | "integrity": "sha512-kiX69+wcPAdgl3Lonh1VI7MBr16nktEvOfViszBSxygRQqSpzv7BffMKRPMFwzeJGPxcio0pdD3kYQGpqQ2SSg==", 183 | "cpu": [ 184 | "ia32" 185 | ], 186 | "dev": true, 187 | "optional": true, 188 | "os": [ 189 | "linux" 190 | ], 191 | "engines": { 192 | "node": ">=12" 193 | } 194 | }, 195 | "node_modules/@esbuild/linux-loong64": { 196 | "version": "0.16.17", 197 | "resolved": "https://registry.npmmirror.com/@esbuild/linux-loong64/-/linux-loong64-0.16.17.tgz", 198 | "integrity": "sha512-dTzNnQwembNDhd654cA4QhbS9uDdXC3TKqMJjgOWsC0yNCbpzfWoXdZvp0mY7HU6nzk5E0zpRGGx3qoQg8T2DQ==", 199 | "cpu": [ 200 | "loong64" 201 | ], 202 | "dev": true, 203 | "optional": true, 204 | "os": [ 205 | "linux" 206 | ], 207 | "engines": { 208 | "node": ">=12" 209 | } 210 | }, 211 | "node_modules/@esbuild/linux-mips64el": { 212 | "version": "0.16.17", 213 | "resolved": "https://registry.npmmirror.com/@esbuild/linux-mips64el/-/linux-mips64el-0.16.17.tgz", 214 | "integrity": "sha512-ezbDkp2nDl0PfIUn0CsQ30kxfcLTlcx4Foz2kYv8qdC6ia2oX5Q3E/8m6lq84Dj/6b0FrkgD582fJMIfHhJfSw==", 215 | "cpu": [ 216 | "mips64el" 217 | ], 218 | "dev": true, 219 | "optional": true, 220 | "os": [ 221 | "linux" 222 | ], 223 | "engines": { 224 | "node": ">=12" 225 | } 226 | }, 227 | "node_modules/@esbuild/linux-ppc64": { 228 | "version": "0.16.17", 229 | "resolved": "https://registry.npmmirror.com/@esbuild/linux-ppc64/-/linux-ppc64-0.16.17.tgz", 230 | "integrity": "sha512-dzS678gYD1lJsW73zrFhDApLVdM3cUF2MvAa1D8K8KtcSKdLBPP4zZSLy6LFZ0jYqQdQ29bjAHJDgz0rVbLB3g==", 231 | "cpu": [ 232 | "ppc64" 233 | ], 234 | "dev": true, 235 | "optional": true, 236 | "os": [ 237 | "linux" 238 | ], 239 | "engines": { 240 | "node": ">=12" 241 | } 242 | }, 243 | "node_modules/@esbuild/linux-riscv64": { 244 | "version": "0.16.17", 245 | "resolved": "https://registry.npmmirror.com/@esbuild/linux-riscv64/-/linux-riscv64-0.16.17.tgz", 246 | "integrity": "sha512-ylNlVsxuFjZK8DQtNUwiMskh6nT0vI7kYl/4fZgV1llP5d6+HIeL/vmmm3jpuoo8+NuXjQVZxmKuhDApK0/cKw==", 247 | "cpu": [ 248 | "riscv64" 249 | ], 250 | "dev": true, 251 | "optional": true, 252 | "os": [ 253 | "linux" 254 | ], 255 | "engines": { 256 | "node": ">=12" 257 | } 258 | }, 259 | "node_modules/@esbuild/linux-s390x": { 260 | "version": "0.16.17", 261 | "resolved": "https://registry.npmmirror.com/@esbuild/linux-s390x/-/linux-s390x-0.16.17.tgz", 262 | "integrity": "sha512-gzy7nUTO4UA4oZ2wAMXPNBGTzZFP7mss3aKR2hH+/4UUkCOyqmjXiKpzGrY2TlEUhbbejzXVKKGazYcQTZWA/w==", 263 | "cpu": [ 264 | "s390x" 265 | ], 266 | "dev": true, 267 | "optional": true, 268 | "os": [ 269 | "linux" 270 | ], 271 | "engines": { 272 | "node": ">=12" 273 | } 274 | }, 275 | "node_modules/@esbuild/linux-x64": { 276 | "version": "0.16.17", 277 | "resolved": "https://registry.npmmirror.com/@esbuild/linux-x64/-/linux-x64-0.16.17.tgz", 278 | "integrity": "sha512-mdPjPxfnmoqhgpiEArqi4egmBAMYvaObgn4poorpUaqmvzzbvqbowRllQ+ZgzGVMGKaPkqUmPDOOFQRUFDmeUw==", 279 | "cpu": [ 280 | "x64" 281 | ], 282 | "dev": true, 283 | "optional": true, 284 | "os": [ 285 | "linux" 286 | ], 287 | "engines": { 288 | "node": ">=12" 289 | } 290 | }, 291 | "node_modules/@esbuild/netbsd-x64": { 292 | "version": "0.16.17", 293 | "resolved": "https://registry.npmmirror.com/@esbuild/netbsd-x64/-/netbsd-x64-0.16.17.tgz", 294 | "integrity": "sha512-/PzmzD/zyAeTUsduZa32bn0ORug+Jd1EGGAUJvqfeixoEISYpGnAezN6lnJoskauoai0Jrs+XSyvDhppCPoKOA==", 295 | "cpu": [ 296 | "x64" 297 | ], 298 | "dev": true, 299 | "optional": true, 300 | "os": [ 301 | "netbsd" 302 | ], 303 | "engines": { 304 | "node": ">=12" 305 | } 306 | }, 307 | "node_modules/@esbuild/openbsd-x64": { 308 | "version": "0.16.17", 309 | "resolved": "https://registry.npmmirror.com/@esbuild/openbsd-x64/-/openbsd-x64-0.16.17.tgz", 310 | "integrity": "sha512-2yaWJhvxGEz2RiftSk0UObqJa/b+rIAjnODJgv2GbGGpRwAfpgzyrg1WLK8rqA24mfZa9GvpjLcBBg8JHkoodg==", 311 | "cpu": [ 312 | "x64" 313 | ], 314 | "dev": true, 315 | "optional": true, 316 | "os": [ 317 | "openbsd" 318 | ], 319 | "engines": { 320 | "node": ">=12" 321 | } 322 | }, 323 | "node_modules/@esbuild/sunos-x64": { 324 | "version": "0.16.17", 325 | "resolved": "https://registry.npmmirror.com/@esbuild/sunos-x64/-/sunos-x64-0.16.17.tgz", 326 | "integrity": "sha512-xtVUiev38tN0R3g8VhRfN7Zl42YCJvyBhRKw1RJjwE1d2emWTVToPLNEQj/5Qxc6lVFATDiy6LjVHYhIPrLxzw==", 327 | "cpu": [ 328 | "x64" 329 | ], 330 | "dev": true, 331 | "optional": true, 332 | "os": [ 333 | "sunos" 334 | ], 335 | "engines": { 336 | "node": ">=12" 337 | } 338 | }, 339 | "node_modules/@esbuild/win32-arm64": { 340 | "version": "0.16.17", 341 | "resolved": "https://registry.npmmirror.com/@esbuild/win32-arm64/-/win32-arm64-0.16.17.tgz", 342 | "integrity": "sha512-ga8+JqBDHY4b6fQAmOgtJJue36scANy4l/rL97W+0wYmijhxKetzZdKOJI7olaBaMhWt8Pac2McJdZLxXWUEQw==", 343 | "cpu": [ 344 | "arm64" 345 | ], 346 | "dev": true, 347 | "optional": true, 348 | "os": [ 349 | "win32" 350 | ], 351 | "engines": { 352 | "node": ">=12" 353 | } 354 | }, 355 | "node_modules/@esbuild/win32-ia32": { 356 | "version": "0.16.17", 357 | "resolved": "https://registry.npmmirror.com/@esbuild/win32-ia32/-/win32-ia32-0.16.17.tgz", 358 | "integrity": "sha512-WnsKaf46uSSF/sZhwnqE4L/F89AYNMiD4YtEcYekBt9Q7nj0DiId2XH2Ng2PHM54qi5oPrQ8luuzGszqi/veig==", 359 | "cpu": [ 360 | "ia32" 361 | ], 362 | "dev": true, 363 | "optional": true, 364 | "os": [ 365 | "win32" 366 | ], 367 | "engines": { 368 | "node": ">=12" 369 | } 370 | }, 371 | "node_modules/@esbuild/win32-x64": { 372 | "version": "0.16.17", 373 | "resolved": "https://registry.npmmirror.com/@esbuild/win32-x64/-/win32-x64-0.16.17.tgz", 374 | "integrity": "sha512-y+EHuSchhL7FjHgvQL/0fnnFmO4T1bhvWANX6gcnqTjtnKWbTvUMCpGnv2+t+31d7RzyEAYAd4u2fnIhHL6N/Q==", 375 | "cpu": [ 376 | "x64" 377 | ], 378 | "dev": true, 379 | "optional": true, 380 | "os": [ 381 | "win32" 382 | ], 383 | "engines": { 384 | "node": ">=12" 385 | } 386 | }, 387 | "node_modules/@eslint/eslintrc": { 388 | "version": "1.4.1", 389 | "resolved": "https://registry.npmmirror.com/@eslint/eslintrc/-/eslintrc-1.4.1.tgz", 390 | "integrity": "sha512-XXrH9Uarn0stsyldqDYq8r++mROmWRI1xKMXa640Bb//SY1+ECYX6VzT6Lcx5frD0V30XieqJ0oX9I2Xj5aoMA==", 391 | "dev": true, 392 | "dependencies": { 393 | "ajv": "^6.12.4", 394 | "debug": "^4.3.2", 395 | "espree": "^9.4.0", 396 | "globals": "^13.19.0", 397 | "ignore": "^5.2.0", 398 | "import-fresh": "^3.2.1", 399 | "js-yaml": "^4.1.0", 400 | "minimatch": "^3.1.2", 401 | "strip-json-comments": "^3.1.1" 402 | }, 403 | "engines": { 404 | "node": "^12.22.0 || ^14.17.0 || >=16.0.0" 405 | } 406 | }, 407 | "node_modules/@humanwhocodes/config-array": { 408 | "version": "0.11.8", 409 | "resolved": "https://registry.npmmirror.com/@humanwhocodes/config-array/-/config-array-0.11.8.tgz", 410 | "integrity": "sha512-UybHIJzJnR5Qc/MsD9Kr+RpO2h+/P1GhOwdiLPXK5TWk5sgTdu88bTD9UP+CKbPPh5Rni1u0GjAdYQLemG8g+g==", 411 | "dev": true, 412 | "dependencies": { 413 | "@humanwhocodes/object-schema": "^1.2.1", 414 | "debug": "^4.1.1", 415 | "minimatch": "^3.0.5" 416 | }, 417 | "engines": { 418 | "node": ">=10.10.0" 419 | } 420 | }, 421 | "node_modules/@humanwhocodes/module-importer": { 422 | "version": "1.0.1", 423 | "resolved": "https://registry.npmmirror.com/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", 424 | "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==", 425 | "dev": true, 426 | "engines": { 427 | "node": ">=12.22" 428 | } 429 | }, 430 | "node_modules/@humanwhocodes/object-schema": { 431 | "version": "1.2.1", 432 | "resolved": "https://registry.npmmirror.com/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz", 433 | "integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==", 434 | "dev": true 435 | }, 436 | "node_modules/@nodelib/fs.scandir": { 437 | "version": "2.1.5", 438 | "resolved": "https://registry.npmmirror.com/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", 439 | "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", 440 | "dev": true, 441 | "dependencies": { 442 | "@nodelib/fs.stat": "2.0.5", 443 | "run-parallel": "^1.1.9" 444 | }, 445 | "engines": { 446 | "node": ">= 8" 447 | } 448 | }, 449 | "node_modules/@nodelib/fs.stat": { 450 | "version": "2.0.5", 451 | "resolved": "https://registry.npmmirror.com/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", 452 | "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", 453 | "dev": true, 454 | "engines": { 455 | "node": ">= 8" 456 | } 457 | }, 458 | "node_modules/@nodelib/fs.walk": { 459 | "version": "1.2.8", 460 | "resolved": "https://registry.npmmirror.com/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", 461 | "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", 462 | "dev": true, 463 | "dependencies": { 464 | "@nodelib/fs.scandir": "2.1.5", 465 | "fastq": "^1.6.0" 466 | }, 467 | "engines": { 468 | "node": ">= 8" 469 | } 470 | }, 471 | "node_modules/@popperjs/core": { 472 | "version": "2.11.6", 473 | "resolved": "https://registry.npmmirror.com/@popperjs/core/-/core-2.11.6.tgz", 474 | "integrity": "sha512-50/17A98tWUfQ176raKiOGXuYpLyyVMkxxG6oylzL3BPOlA6ADGdK7EYunSa4I064xerltq9TGXs8HmOk5E+vw==", 475 | "peer": true 476 | }, 477 | "node_modules/@vitejs/plugin-vue": { 478 | "version": "4.0.0", 479 | "resolved": "https://registry.npmmirror.com/@vitejs/plugin-vue/-/plugin-vue-4.0.0.tgz", 480 | "integrity": "sha512-e0X4jErIxAB5oLtDqbHvHpJe/uWNkdpYV83AOG2xo2tEVSzCzewgJMtREZM30wXnM5ls90hxiOtAuVU6H5JgbA==", 481 | "dev": true, 482 | "engines": { 483 | "node": "^14.18.0 || >=16.0.0" 484 | }, 485 | "peerDependencies": { 486 | "vite": "^4.0.0", 487 | "vue": "^3.2.25" 488 | } 489 | }, 490 | "node_modules/@vue/compiler-core": { 491 | "version": "3.2.45", 492 | "resolved": "https://registry.npmmirror.com/@vue/compiler-core/-/compiler-core-3.2.45.tgz", 493 | "integrity": "sha512-rcMj7H+PYe5wBV3iYeUgbCglC+pbpN8hBLTJvRiK2eKQiWqu+fG9F+8sW99JdL4LQi7Re178UOxn09puSXvn4A==", 494 | "dependencies": { 495 | "@babel/parser": "^7.16.4", 496 | "@vue/shared": "3.2.45", 497 | "estree-walker": "^2.0.2", 498 | "source-map": "^0.6.1" 499 | } 500 | }, 501 | "node_modules/@vue/compiler-dom": { 502 | "version": "3.2.45", 503 | "resolved": "https://registry.npmmirror.com/@vue/compiler-dom/-/compiler-dom-3.2.45.tgz", 504 | "integrity": "sha512-tyYeUEuKqqZO137WrZkpwfPCdiiIeXYCcJ8L4gWz9vqaxzIQRccTSwSWZ/Axx5YR2z+LvpUbmPNXxuBU45lyRw==", 505 | "dependencies": { 506 | "@vue/compiler-core": "3.2.45", 507 | "@vue/shared": "3.2.45" 508 | } 509 | }, 510 | "node_modules/@vue/compiler-sfc": { 511 | "version": "3.2.45", 512 | "resolved": "https://registry.npmmirror.com/@vue/compiler-sfc/-/compiler-sfc-3.2.45.tgz", 513 | "integrity": "sha512-1jXDuWah1ggsnSAOGsec8cFjT/K6TMZ0sPL3o3d84Ft2AYZi2jWJgRMjw4iaK0rBfA89L5gw427H4n1RZQBu6Q==", 514 | "dependencies": { 515 | "@babel/parser": "^7.16.4", 516 | "@vue/compiler-core": "3.2.45", 517 | "@vue/compiler-dom": "3.2.45", 518 | "@vue/compiler-ssr": "3.2.45", 519 | "@vue/reactivity-transform": "3.2.45", 520 | "@vue/shared": "3.2.45", 521 | "estree-walker": "^2.0.2", 522 | "magic-string": "^0.25.7", 523 | "postcss": "^8.1.10", 524 | "source-map": "^0.6.1" 525 | } 526 | }, 527 | "node_modules/@vue/compiler-ssr": { 528 | "version": "3.2.45", 529 | "resolved": "https://registry.npmmirror.com/@vue/compiler-ssr/-/compiler-ssr-3.2.45.tgz", 530 | "integrity": "sha512-6BRaggEGqhWht3lt24CrIbQSRD5O07MTmd+LjAn5fJj568+R9eUD2F7wMQJjX859seSlrYog7sUtrZSd7feqrQ==", 531 | "dependencies": { 532 | "@vue/compiler-dom": "3.2.45", 533 | "@vue/shared": "3.2.45" 534 | } 535 | }, 536 | "node_modules/@vue/devtools-api": { 537 | "version": "6.4.5", 538 | "resolved": "https://registry.npmmirror.com/@vue/devtools-api/-/devtools-api-6.4.5.tgz", 539 | "integrity": "sha512-JD5fcdIuFxU4fQyXUu3w2KpAJHzTVdN+p4iOX2lMWSHMOoQdMAcpFLZzm9Z/2nmsoZ1a96QEhZ26e50xLBsgOQ==" 540 | }, 541 | "node_modules/@vue/reactivity": { 542 | "version": "3.2.45", 543 | "resolved": "https://registry.npmmirror.com/@vue/reactivity/-/reactivity-3.2.45.tgz", 544 | "integrity": "sha512-PRvhCcQcyEVohW0P8iQ7HDcIOXRjZfAsOds3N99X/Dzewy8TVhTCT4uXpAHfoKjVTJRA0O0K+6QNkDIZAxNi3A==", 545 | "dependencies": { 546 | "@vue/shared": "3.2.45" 547 | } 548 | }, 549 | "node_modules/@vue/reactivity-transform": { 550 | "version": "3.2.45", 551 | "resolved": "https://registry.npmmirror.com/@vue/reactivity-transform/-/reactivity-transform-3.2.45.tgz", 552 | "integrity": "sha512-BHVmzYAvM7vcU5WmuYqXpwaBHjsS8T63jlKGWVtHxAHIoMIlmaMyurUSEs1Zcg46M4AYT5MtB1U274/2aNzjJQ==", 553 | "dependencies": { 554 | "@babel/parser": "^7.16.4", 555 | "@vue/compiler-core": "3.2.45", 556 | "@vue/shared": "3.2.45", 557 | "estree-walker": "^2.0.2", 558 | "magic-string": "^0.25.7" 559 | } 560 | }, 561 | "node_modules/@vue/runtime-core": { 562 | "version": "3.2.45", 563 | "resolved": "https://registry.npmmirror.com/@vue/runtime-core/-/runtime-core-3.2.45.tgz", 564 | "integrity": "sha512-gzJiTA3f74cgARptqzYswmoQx0fIA+gGYBfokYVhF8YSXjWTUA2SngRzZRku2HbGbjzB6LBYSbKGIaK8IW+s0A==", 565 | "dependencies": { 566 | "@vue/reactivity": "3.2.45", 567 | "@vue/shared": "3.2.45" 568 | } 569 | }, 570 | "node_modules/@vue/runtime-dom": { 571 | "version": "3.2.45", 572 | "resolved": "https://registry.npmmirror.com/@vue/runtime-dom/-/runtime-dom-3.2.45.tgz", 573 | "integrity": "sha512-cy88YpfP5Ue2bDBbj75Cb4bIEZUMM/mAkDMfqDTpUYVgTf/kuQ2VQ8LebuZ8k6EudgH8pYhsGWHlY0lcxlvTwA==", 574 | "dependencies": { 575 | "@vue/runtime-core": "3.2.45", 576 | "@vue/shared": "3.2.45", 577 | "csstype": "^2.6.8" 578 | } 579 | }, 580 | "node_modules/@vue/server-renderer": { 581 | "version": "3.2.45", 582 | "resolved": "https://registry.npmmirror.com/@vue/server-renderer/-/server-renderer-3.2.45.tgz", 583 | "integrity": "sha512-ebiMq7q24WBU1D6uhPK//2OTR1iRIyxjF5iVq/1a5I1SDMDyDu4Ts6fJaMnjrvD3MqnaiFkKQj+LKAgz5WIK3g==", 584 | "dependencies": { 585 | "@vue/compiler-ssr": "3.2.45", 586 | "@vue/shared": "3.2.45" 587 | }, 588 | "peerDependencies": { 589 | "vue": "3.2.45" 590 | } 591 | }, 592 | "node_modules/@vue/shared": { 593 | "version": "3.2.45", 594 | "resolved": "https://registry.npmmirror.com/@vue/shared/-/shared-3.2.45.tgz", 595 | "integrity": "sha512-Ewzq5Yhimg7pSztDV+RH1UDKBzmtqieXQlpTVm2AwraoRL/Rks96mvd8Vgi7Lj+h+TH8dv7mXD3FRZR3TUvbSg==" 596 | }, 597 | "node_modules/acorn": { 598 | "version": "8.8.1", 599 | "resolved": "https://registry.npmmirror.com/acorn/-/acorn-8.8.1.tgz", 600 | "integrity": "sha512-7zFpHzhnqYKrkYdUjF1HI1bzd0VygEGX8lFk4k5zVMqHEoES+P+7TKI+EvLO9WVMJ8eekdO0aDEK044xTXwPPA==", 601 | "dev": true, 602 | "bin": { 603 | "acorn": "bin/acorn" 604 | }, 605 | "engines": { 606 | "node": ">=0.4.0" 607 | } 608 | }, 609 | "node_modules/acorn-jsx": { 610 | "version": "5.3.2", 611 | "resolved": "https://registry.npmmirror.com/acorn-jsx/-/acorn-jsx-5.3.2.tgz", 612 | "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", 613 | "dev": true, 614 | "peerDependencies": { 615 | "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" 616 | } 617 | }, 618 | "node_modules/ajv": { 619 | "version": "6.12.6", 620 | "resolved": "https://registry.npmmirror.com/ajv/-/ajv-6.12.6.tgz", 621 | "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", 622 | "dev": true, 623 | "dependencies": { 624 | "fast-deep-equal": "^3.1.1", 625 | "fast-json-stable-stringify": "^2.0.0", 626 | "json-schema-traverse": "^0.4.1", 627 | "uri-js": "^4.2.2" 628 | } 629 | }, 630 | "node_modules/ansi-regex": { 631 | "version": "5.0.1", 632 | "resolved": "https://registry.npmmirror.com/ansi-regex/-/ansi-regex-5.0.1.tgz", 633 | "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", 634 | "dev": true, 635 | "engines": { 636 | "node": ">=8" 637 | } 638 | }, 639 | "node_modules/ansi-styles": { 640 | "version": "4.3.0", 641 | "resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-4.3.0.tgz", 642 | "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", 643 | "dev": true, 644 | "dependencies": { 645 | "color-convert": "^2.0.1" 646 | }, 647 | "engines": { 648 | "node": ">=8" 649 | } 650 | }, 651 | "node_modules/argparse": { 652 | "version": "2.0.1", 653 | "resolved": "https://registry.npmmirror.com/argparse/-/argparse-2.0.1.tgz", 654 | "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", 655 | "dev": true 656 | }, 657 | "node_modules/asynckit": { 658 | "version": "0.4.0", 659 | "resolved": "https://registry.npmmirror.com/asynckit/-/asynckit-0.4.0.tgz", 660 | "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==" 661 | }, 662 | "node_modules/axios": { 663 | "version": "1.2.2", 664 | "resolved": "https://registry.npmmirror.com/axios/-/axios-1.2.2.tgz", 665 | "integrity": "sha512-bz/J4gS2S3I7mpN/YZfGFTqhXTYzRho8Ay38w2otuuDR322KzFIWm/4W2K6gIwvWaws5n+mnb7D1lN9uD+QH6Q==", 666 | "dependencies": { 667 | "follow-redirects": "^1.15.0", 668 | "form-data": "^4.0.0", 669 | "proxy-from-env": "^1.1.0" 670 | } 671 | }, 672 | "node_modules/balanced-match": { 673 | "version": "1.0.2", 674 | "resolved": "https://registry.npmmirror.com/balanced-match/-/balanced-match-1.0.2.tgz", 675 | "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", 676 | "dev": true 677 | }, 678 | "node_modules/boolbase": { 679 | "version": "1.0.0", 680 | "resolved": "https://registry.npmmirror.com/boolbase/-/boolbase-1.0.0.tgz", 681 | "integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==", 682 | "dev": true 683 | }, 684 | "node_modules/bootstrap": { 685 | "version": "5.2.3", 686 | "resolved": "https://registry.npmmirror.com/bootstrap/-/bootstrap-5.2.3.tgz", 687 | "integrity": "sha512-cEKPM+fwb3cT8NzQZYEu4HilJ3anCrWqh3CHAok1p9jXqMPsPTBhU25fBckEJHJ/p+tTxTFTsFQGM+gaHpi3QQ==", 688 | "peerDependencies": { 689 | "@popperjs/core": "^2.11.6" 690 | } 691 | }, 692 | "node_modules/brace-expansion": { 693 | "version": "1.1.11", 694 | "resolved": "https://registry.npmmirror.com/brace-expansion/-/brace-expansion-1.1.11.tgz", 695 | "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", 696 | "dev": true, 697 | "dependencies": { 698 | "balanced-match": "^1.0.0", 699 | "concat-map": "0.0.1" 700 | } 701 | }, 702 | "node_modules/callsites": { 703 | "version": "3.1.0", 704 | "resolved": "https://registry.npmmirror.com/callsites/-/callsites-3.1.0.tgz", 705 | "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", 706 | "dev": true, 707 | "engines": { 708 | "node": ">=6" 709 | } 710 | }, 711 | "node_modules/chalk": { 712 | "version": "4.1.2", 713 | "resolved": "https://registry.npmmirror.com/chalk/-/chalk-4.1.2.tgz", 714 | "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", 715 | "dev": true, 716 | "dependencies": { 717 | "ansi-styles": "^4.1.0", 718 | "supports-color": "^7.1.0" 719 | }, 720 | "engines": { 721 | "node": ">=10" 722 | } 723 | }, 724 | "node_modules/color-convert": { 725 | "version": "2.0.1", 726 | "resolved": "https://registry.npmmirror.com/color-convert/-/color-convert-2.0.1.tgz", 727 | "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", 728 | "dev": true, 729 | "dependencies": { 730 | "color-name": "~1.1.4" 731 | }, 732 | "engines": { 733 | "node": ">=7.0.0" 734 | } 735 | }, 736 | "node_modules/color-name": { 737 | "version": "1.1.4", 738 | "resolved": "https://registry.npmmirror.com/color-name/-/color-name-1.1.4.tgz", 739 | "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", 740 | "dev": true 741 | }, 742 | "node_modules/combined-stream": { 743 | "version": "1.0.8", 744 | "resolved": "https://registry.npmmirror.com/combined-stream/-/combined-stream-1.0.8.tgz", 745 | "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", 746 | "dependencies": { 747 | "delayed-stream": "~1.0.0" 748 | }, 749 | "engines": { 750 | "node": ">= 0.8" 751 | } 752 | }, 753 | "node_modules/concat-map": { 754 | "version": "0.0.1", 755 | "resolved": "https://registry.npmmirror.com/concat-map/-/concat-map-0.0.1.tgz", 756 | "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", 757 | "dev": true 758 | }, 759 | "node_modules/copy-anything": { 760 | "version": "2.0.6", 761 | "resolved": "https://registry.npmmirror.com/copy-anything/-/copy-anything-2.0.6.tgz", 762 | "integrity": "sha512-1j20GZTsvKNkc4BY3NpMOM8tt///wY3FpIzozTOFO2ffuZcV61nojHXVKIy3WM+7ADCy5FVhdZYHYDdgTU0yJw==", 763 | "dependencies": { 764 | "is-what": "^3.14.1" 765 | } 766 | }, 767 | "node_modules/cross-spawn": { 768 | "version": "7.0.3", 769 | "resolved": "https://registry.npmmirror.com/cross-spawn/-/cross-spawn-7.0.3.tgz", 770 | "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", 771 | "dev": true, 772 | "dependencies": { 773 | "path-key": "^3.1.0", 774 | "shebang-command": "^2.0.0", 775 | "which": "^2.0.1" 776 | }, 777 | "engines": { 778 | "node": ">= 8" 779 | } 780 | }, 781 | "node_modules/cssesc": { 782 | "version": "3.0.0", 783 | "resolved": "https://registry.npmmirror.com/cssesc/-/cssesc-3.0.0.tgz", 784 | "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", 785 | "dev": true, 786 | "bin": { 787 | "cssesc": "bin/cssesc" 788 | }, 789 | "engines": { 790 | "node": ">=4" 791 | } 792 | }, 793 | "node_modules/csstype": { 794 | "version": "2.6.21", 795 | "resolved": "https://registry.npmmirror.com/csstype/-/csstype-2.6.21.tgz", 796 | "integrity": "sha512-Z1PhmomIfypOpoMjRQB70jfvy/wxT50qW08YXO5lMIJkrdq4yOTR+AW7FqutScmB9NkLwxo+jU+kZLbofZZq/w==" 797 | }, 798 | "node_modules/debug": { 799 | "version": "4.3.4", 800 | "resolved": "https://registry.npmmirror.com/debug/-/debug-4.3.4.tgz", 801 | "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", 802 | "dev": true, 803 | "dependencies": { 804 | "ms": "2.1.2" 805 | }, 806 | "engines": { 807 | "node": ">=6.0" 808 | }, 809 | "peerDependenciesMeta": { 810 | "supports-color": { 811 | "optional": true 812 | } 813 | } 814 | }, 815 | "node_modules/deep-is": { 816 | "version": "0.1.4", 817 | "resolved": "https://registry.npmmirror.com/deep-is/-/deep-is-0.1.4.tgz", 818 | "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", 819 | "dev": true 820 | }, 821 | "node_modules/delayed-stream": { 822 | "version": "1.0.0", 823 | "resolved": "https://registry.npmmirror.com/delayed-stream/-/delayed-stream-1.0.0.tgz", 824 | "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", 825 | "engines": { 826 | "node": ">=0.4.0" 827 | } 828 | }, 829 | "node_modules/doctrine": { 830 | "version": "3.0.0", 831 | "resolved": "https://registry.npmmirror.com/doctrine/-/doctrine-3.0.0.tgz", 832 | "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", 833 | "dev": true, 834 | "dependencies": { 835 | "esutils": "^2.0.2" 836 | }, 837 | "engines": { 838 | "node": ">=6.0.0" 839 | } 840 | }, 841 | "node_modules/errno": { 842 | "version": "0.1.8", 843 | "resolved": "https://registry.npmmirror.com/errno/-/errno-0.1.8.tgz", 844 | "integrity": "sha512-dJ6oBr5SQ1VSd9qkk7ByRgb/1SH4JZjCHSW/mr63/QcXO9zLVxvJ6Oy13nio03rxpSnVDDjFor75SjVeZWPW/A==", 845 | "optional": true, 846 | "dependencies": { 847 | "prr": "~1.0.1" 848 | }, 849 | "bin": { 850 | "errno": "cli.js" 851 | } 852 | }, 853 | "node_modules/esbuild": { 854 | "version": "0.16.17", 855 | "resolved": "https://registry.npmmirror.com/esbuild/-/esbuild-0.16.17.tgz", 856 | "integrity": "sha512-G8LEkV0XzDMNwXKgM0Jwu3nY3lSTwSGY6XbxM9cr9+s0T/qSV1q1JVPBGzm3dcjhCic9+emZDmMffkwgPeOeLg==", 857 | "dev": true, 858 | "hasInstallScript": true, 859 | "bin": { 860 | "esbuild": "bin/esbuild" 861 | }, 862 | "engines": { 863 | "node": ">=12" 864 | }, 865 | "optionalDependencies": { 866 | "@esbuild/android-arm": "0.16.17", 867 | "@esbuild/android-arm64": "0.16.17", 868 | "@esbuild/android-x64": "0.16.17", 869 | "@esbuild/darwin-arm64": "0.16.17", 870 | "@esbuild/darwin-x64": "0.16.17", 871 | "@esbuild/freebsd-arm64": "0.16.17", 872 | "@esbuild/freebsd-x64": "0.16.17", 873 | "@esbuild/linux-arm": "0.16.17", 874 | "@esbuild/linux-arm64": "0.16.17", 875 | "@esbuild/linux-ia32": "0.16.17", 876 | "@esbuild/linux-loong64": "0.16.17", 877 | "@esbuild/linux-mips64el": "0.16.17", 878 | "@esbuild/linux-ppc64": "0.16.17", 879 | "@esbuild/linux-riscv64": "0.16.17", 880 | "@esbuild/linux-s390x": "0.16.17", 881 | "@esbuild/linux-x64": "0.16.17", 882 | "@esbuild/netbsd-x64": "0.16.17", 883 | "@esbuild/openbsd-x64": "0.16.17", 884 | "@esbuild/sunos-x64": "0.16.17", 885 | "@esbuild/win32-arm64": "0.16.17", 886 | "@esbuild/win32-ia32": "0.16.17", 887 | "@esbuild/win32-x64": "0.16.17" 888 | } 889 | }, 890 | "node_modules/escape-string-regexp": { 891 | "version": "4.0.0", 892 | "resolved": "https://registry.npmmirror.com/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", 893 | "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", 894 | "dev": true, 895 | "engines": { 896 | "node": ">=10" 897 | } 898 | }, 899 | "node_modules/eslint": { 900 | "version": "8.32.0", 901 | "resolved": "https://registry.npmmirror.com/eslint/-/eslint-8.32.0.tgz", 902 | "integrity": "sha512-nETVXpnthqKPFyuY2FNjz/bEd6nbosRgKbkgS/y1C7LJop96gYHWpiguLecMHQ2XCPxn77DS0P+68WzG6vkZSQ==", 903 | "dev": true, 904 | "dependencies": { 905 | "@eslint/eslintrc": "^1.4.1", 906 | "@humanwhocodes/config-array": "^0.11.8", 907 | "@humanwhocodes/module-importer": "^1.0.1", 908 | "@nodelib/fs.walk": "^1.2.8", 909 | "ajv": "^6.10.0", 910 | "chalk": "^4.0.0", 911 | "cross-spawn": "^7.0.2", 912 | "debug": "^4.3.2", 913 | "doctrine": "^3.0.0", 914 | "escape-string-regexp": "^4.0.0", 915 | "eslint-scope": "^7.1.1", 916 | "eslint-utils": "^3.0.0", 917 | "eslint-visitor-keys": "^3.3.0", 918 | "espree": "^9.4.0", 919 | "esquery": "^1.4.0", 920 | "esutils": "^2.0.2", 921 | "fast-deep-equal": "^3.1.3", 922 | "file-entry-cache": "^6.0.1", 923 | "find-up": "^5.0.0", 924 | "glob-parent": "^6.0.2", 925 | "globals": "^13.19.0", 926 | "grapheme-splitter": "^1.0.4", 927 | "ignore": "^5.2.0", 928 | "import-fresh": "^3.0.0", 929 | "imurmurhash": "^0.1.4", 930 | "is-glob": "^4.0.0", 931 | "is-path-inside": "^3.0.3", 932 | "js-sdsl": "^4.1.4", 933 | "js-yaml": "^4.1.0", 934 | "json-stable-stringify-without-jsonify": "^1.0.1", 935 | "levn": "^0.4.1", 936 | "lodash.merge": "^4.6.2", 937 | "minimatch": "^3.1.2", 938 | "natural-compare": "^1.4.0", 939 | "optionator": "^0.9.1", 940 | "regexpp": "^3.2.0", 941 | "strip-ansi": "^6.0.1", 942 | "strip-json-comments": "^3.1.0", 943 | "text-table": "^0.2.0" 944 | }, 945 | "bin": { 946 | "eslint": "bin/eslint.js" 947 | }, 948 | "engines": { 949 | "node": "^12.22.0 || ^14.17.0 || >=16.0.0" 950 | } 951 | }, 952 | "node_modules/eslint-plugin-vue": { 953 | "version": "9.9.0", 954 | "resolved": "https://registry.npmmirror.com/eslint-plugin-vue/-/eslint-plugin-vue-9.9.0.tgz", 955 | "integrity": "sha512-YbubS7eK0J7DCf0U2LxvVP7LMfs6rC6UltihIgval3azO3gyDwEGVgsCMe1TmDiEkl6GdMKfRpaME6QxIYtzDQ==", 956 | "dev": true, 957 | "dependencies": { 958 | "eslint-utils": "^3.0.0", 959 | "natural-compare": "^1.4.0", 960 | "nth-check": "^2.0.1", 961 | "postcss-selector-parser": "^6.0.9", 962 | "semver": "^7.3.5", 963 | "vue-eslint-parser": "^9.0.1", 964 | "xml-name-validator": "^4.0.0" 965 | }, 966 | "engines": { 967 | "node": "^14.17.0 || >=16.0.0" 968 | }, 969 | "peerDependencies": { 970 | "eslint": "^6.2.0 || ^7.0.0 || ^8.0.0" 971 | } 972 | }, 973 | "node_modules/eslint-scope": { 974 | "version": "7.1.1", 975 | "resolved": "https://registry.npmmirror.com/eslint-scope/-/eslint-scope-7.1.1.tgz", 976 | "integrity": "sha512-QKQM/UXpIiHcLqJ5AOyIW7XZmzjkzQXYE54n1++wb0u9V/abW3l9uQnxX8Z5Xd18xyKIMTUAyQ0k1e8pz6LUrw==", 977 | "dev": true, 978 | "dependencies": { 979 | "esrecurse": "^4.3.0", 980 | "estraverse": "^5.2.0" 981 | }, 982 | "engines": { 983 | "node": "^12.22.0 || ^14.17.0 || >=16.0.0" 984 | } 985 | }, 986 | "node_modules/eslint-utils": { 987 | "version": "3.0.0", 988 | "resolved": "https://registry.npmmirror.com/eslint-utils/-/eslint-utils-3.0.0.tgz", 989 | "integrity": "sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA==", 990 | "dev": true, 991 | "dependencies": { 992 | "eslint-visitor-keys": "^2.0.0" 993 | }, 994 | "engines": { 995 | "node": "^10.0.0 || ^12.0.0 || >= 14.0.0" 996 | }, 997 | "peerDependencies": { 998 | "eslint": ">=5" 999 | } 1000 | }, 1001 | "node_modules/eslint-utils/node_modules/eslint-visitor-keys": { 1002 | "version": "2.1.0", 1003 | "resolved": "https://registry.npmmirror.com/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", 1004 | "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", 1005 | "dev": true, 1006 | "engines": { 1007 | "node": ">=10" 1008 | } 1009 | }, 1010 | "node_modules/eslint-visitor-keys": { 1011 | "version": "3.3.0", 1012 | "resolved": "https://registry.npmmirror.com/eslint-visitor-keys/-/eslint-visitor-keys-3.3.0.tgz", 1013 | "integrity": "sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA==", 1014 | "dev": true, 1015 | "engines": { 1016 | "node": "^12.22.0 || ^14.17.0 || >=16.0.0" 1017 | } 1018 | }, 1019 | "node_modules/espree": { 1020 | "version": "9.4.1", 1021 | "resolved": "https://registry.npmmirror.com/espree/-/espree-9.4.1.tgz", 1022 | "integrity": "sha512-XwctdmTO6SIvCzd9810yyNzIrOrqNYV9Koizx4C/mRhf9uq0o4yHoCEU/670pOxOL/MSraektvSAji79kX90Vg==", 1023 | "dev": true, 1024 | "dependencies": { 1025 | "acorn": "^8.8.0", 1026 | "acorn-jsx": "^5.3.2", 1027 | "eslint-visitor-keys": "^3.3.0" 1028 | }, 1029 | "engines": { 1030 | "node": "^12.22.0 || ^14.17.0 || >=16.0.0" 1031 | } 1032 | }, 1033 | "node_modules/esquery": { 1034 | "version": "1.4.0", 1035 | "resolved": "https://registry.npmmirror.com/esquery/-/esquery-1.4.0.tgz", 1036 | "integrity": "sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==", 1037 | "dev": true, 1038 | "dependencies": { 1039 | "estraverse": "^5.1.0" 1040 | }, 1041 | "engines": { 1042 | "node": ">=0.10" 1043 | } 1044 | }, 1045 | "node_modules/esrecurse": { 1046 | "version": "4.3.0", 1047 | "resolved": "https://registry.npmmirror.com/esrecurse/-/esrecurse-4.3.0.tgz", 1048 | "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", 1049 | "dev": true, 1050 | "dependencies": { 1051 | "estraverse": "^5.2.0" 1052 | }, 1053 | "engines": { 1054 | "node": ">=4.0" 1055 | } 1056 | }, 1057 | "node_modules/estraverse": { 1058 | "version": "5.3.0", 1059 | "resolved": "https://registry.npmmirror.com/estraverse/-/estraverse-5.3.0.tgz", 1060 | "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", 1061 | "dev": true, 1062 | "engines": { 1063 | "node": ">=4.0" 1064 | } 1065 | }, 1066 | "node_modules/estree-walker": { 1067 | "version": "2.0.2", 1068 | "resolved": "https://registry.npmmirror.com/estree-walker/-/estree-walker-2.0.2.tgz", 1069 | "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==" 1070 | }, 1071 | "node_modules/esutils": { 1072 | "version": "2.0.3", 1073 | "resolved": "https://registry.npmmirror.com/esutils/-/esutils-2.0.3.tgz", 1074 | "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", 1075 | "dev": true, 1076 | "engines": { 1077 | "node": ">=0.10.0" 1078 | } 1079 | }, 1080 | "node_modules/fast-deep-equal": { 1081 | "version": "3.1.3", 1082 | "resolved": "https://registry.npmmirror.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", 1083 | "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", 1084 | "dev": true 1085 | }, 1086 | "node_modules/fast-json-stable-stringify": { 1087 | "version": "2.1.0", 1088 | "resolved": "https://registry.npmmirror.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", 1089 | "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", 1090 | "dev": true 1091 | }, 1092 | "node_modules/fast-levenshtein": { 1093 | "version": "2.0.6", 1094 | "resolved": "https://registry.npmmirror.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", 1095 | "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", 1096 | "dev": true 1097 | }, 1098 | "node_modules/fastq": { 1099 | "version": "1.15.0", 1100 | "resolved": "https://registry.npmmirror.com/fastq/-/fastq-1.15.0.tgz", 1101 | "integrity": "sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==", 1102 | "dev": true, 1103 | "dependencies": { 1104 | "reusify": "^1.0.4" 1105 | } 1106 | }, 1107 | "node_modules/file-entry-cache": { 1108 | "version": "6.0.1", 1109 | "resolved": "https://registry.npmmirror.com/file-entry-cache/-/file-entry-cache-6.0.1.tgz", 1110 | "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", 1111 | "dev": true, 1112 | "dependencies": { 1113 | "flat-cache": "^3.0.4" 1114 | }, 1115 | "engines": { 1116 | "node": "^10.12.0 || >=12.0.0" 1117 | } 1118 | }, 1119 | "node_modules/find-up": { 1120 | "version": "5.0.0", 1121 | "resolved": "https://registry.npmmirror.com/find-up/-/find-up-5.0.0.tgz", 1122 | "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", 1123 | "dev": true, 1124 | "dependencies": { 1125 | "locate-path": "^6.0.0", 1126 | "path-exists": "^4.0.0" 1127 | }, 1128 | "engines": { 1129 | "node": ">=10" 1130 | } 1131 | }, 1132 | "node_modules/flat-cache": { 1133 | "version": "3.0.4", 1134 | "resolved": "https://registry.npmmirror.com/flat-cache/-/flat-cache-3.0.4.tgz", 1135 | "integrity": "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==", 1136 | "dev": true, 1137 | "dependencies": { 1138 | "flatted": "^3.1.0", 1139 | "rimraf": "^3.0.2" 1140 | }, 1141 | "engines": { 1142 | "node": "^10.12.0 || >=12.0.0" 1143 | } 1144 | }, 1145 | "node_modules/flatted": { 1146 | "version": "3.2.7", 1147 | "resolved": "https://registry.npmmirror.com/flatted/-/flatted-3.2.7.tgz", 1148 | "integrity": "sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ==", 1149 | "dev": true 1150 | }, 1151 | "node_modules/follow-redirects": { 1152 | "version": "1.15.2", 1153 | "resolved": "https://registry.npmmirror.com/follow-redirects/-/follow-redirects-1.15.2.tgz", 1154 | "integrity": "sha512-VQLG33o04KaQ8uYi2tVNbdrWp1QWxNNea+nmIB4EVM28v0hmP17z7aG1+wAkNzVq4KeXTq3221ye5qTJP91JwA==", 1155 | "engines": { 1156 | "node": ">=4.0" 1157 | }, 1158 | "peerDependenciesMeta": { 1159 | "debug": { 1160 | "optional": true 1161 | } 1162 | } 1163 | }, 1164 | "node_modules/form-data": { 1165 | "version": "4.0.0", 1166 | "resolved": "https://registry.npmmirror.com/form-data/-/form-data-4.0.0.tgz", 1167 | "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==", 1168 | "dependencies": { 1169 | "asynckit": "^0.4.0", 1170 | "combined-stream": "^1.0.8", 1171 | "mime-types": "^2.1.12" 1172 | }, 1173 | "engines": { 1174 | "node": ">= 6" 1175 | } 1176 | }, 1177 | "node_modules/fs.realpath": { 1178 | "version": "1.0.0", 1179 | "resolved": "https://registry.npmmirror.com/fs.realpath/-/fs.realpath-1.0.0.tgz", 1180 | "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", 1181 | "dev": true 1182 | }, 1183 | "node_modules/fsevents": { 1184 | "version": "2.3.2", 1185 | "resolved": "https://registry.npmmirror.com/fsevents/-/fsevents-2.3.2.tgz", 1186 | "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", 1187 | "dev": true, 1188 | "hasInstallScript": true, 1189 | "optional": true, 1190 | "os": [ 1191 | "darwin" 1192 | ], 1193 | "engines": { 1194 | "node": "^8.16.0 || ^10.6.0 || >=11.0.0" 1195 | } 1196 | }, 1197 | "node_modules/function-bind": { 1198 | "version": "1.1.1", 1199 | "resolved": "https://registry.npmmirror.com/function-bind/-/function-bind-1.1.1.tgz", 1200 | "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", 1201 | "dev": true 1202 | }, 1203 | "node_modules/glob": { 1204 | "version": "7.2.3", 1205 | "resolved": "https://registry.npmmirror.com/glob/-/glob-7.2.3.tgz", 1206 | "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", 1207 | "dev": true, 1208 | "dependencies": { 1209 | "fs.realpath": "^1.0.0", 1210 | "inflight": "^1.0.4", 1211 | "inherits": "2", 1212 | "minimatch": "^3.1.1", 1213 | "once": "^1.3.0", 1214 | "path-is-absolute": "^1.0.0" 1215 | }, 1216 | "engines": { 1217 | "node": "*" 1218 | } 1219 | }, 1220 | "node_modules/glob-parent": { 1221 | "version": "6.0.2", 1222 | "resolved": "https://registry.npmmirror.com/glob-parent/-/glob-parent-6.0.2.tgz", 1223 | "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", 1224 | "dev": true, 1225 | "dependencies": { 1226 | "is-glob": "^4.0.3" 1227 | }, 1228 | "engines": { 1229 | "node": ">=10.13.0" 1230 | } 1231 | }, 1232 | "node_modules/globals": { 1233 | "version": "13.19.0", 1234 | "resolved": "https://registry.npmmirror.com/globals/-/globals-13.19.0.tgz", 1235 | "integrity": "sha512-dkQ957uSRWHw7CFXLUtUHQI3g3aWApYhfNR2O6jn/907riyTYKVBmxYVROkBcY614FSSeSJh7Xm7SrUWCxvJMQ==", 1236 | "dev": true, 1237 | "dependencies": { 1238 | "type-fest": "^0.20.2" 1239 | }, 1240 | "engines": { 1241 | "node": ">=8" 1242 | } 1243 | }, 1244 | "node_modules/graceful-fs": { 1245 | "version": "4.2.10", 1246 | "resolved": "https://registry.npmmirror.com/graceful-fs/-/graceful-fs-4.2.10.tgz", 1247 | "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==", 1248 | "optional": true 1249 | }, 1250 | "node_modules/grapheme-splitter": { 1251 | "version": "1.0.4", 1252 | "resolved": "https://registry.npmmirror.com/grapheme-splitter/-/grapheme-splitter-1.0.4.tgz", 1253 | "integrity": "sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ==", 1254 | "dev": true 1255 | }, 1256 | "node_modules/has": { 1257 | "version": "1.0.3", 1258 | "resolved": "https://registry.npmmirror.com/has/-/has-1.0.3.tgz", 1259 | "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", 1260 | "dev": true, 1261 | "dependencies": { 1262 | "function-bind": "^1.1.1" 1263 | }, 1264 | "engines": { 1265 | "node": ">= 0.4.0" 1266 | } 1267 | }, 1268 | "node_modules/has-flag": { 1269 | "version": "4.0.0", 1270 | "resolved": "https://registry.npmmirror.com/has-flag/-/has-flag-4.0.0.tgz", 1271 | "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", 1272 | "dev": true, 1273 | "engines": { 1274 | "node": ">=8" 1275 | } 1276 | }, 1277 | "node_modules/iconv-lite": { 1278 | "version": "0.6.3", 1279 | "resolved": "https://registry.npmmirror.com/iconv-lite/-/iconv-lite-0.6.3.tgz", 1280 | "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", 1281 | "optional": true, 1282 | "dependencies": { 1283 | "safer-buffer": ">= 2.1.2 < 3.0.0" 1284 | }, 1285 | "engines": { 1286 | "node": ">=0.10.0" 1287 | } 1288 | }, 1289 | "node_modules/ignore": { 1290 | "version": "5.2.4", 1291 | "resolved": "https://registry.npmmirror.com/ignore/-/ignore-5.2.4.tgz", 1292 | "integrity": "sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==", 1293 | "dev": true, 1294 | "engines": { 1295 | "node": ">= 4" 1296 | } 1297 | }, 1298 | "node_modules/image-size": { 1299 | "version": "0.5.5", 1300 | "resolved": "https://registry.npmmirror.com/image-size/-/image-size-0.5.5.tgz", 1301 | "integrity": "sha512-6TDAlDPZxUFCv+fuOkIoXT/V/f3Qbq8e37p+YOiYrUv3v9cc3/6x78VdfPgFVaB9dZYeLUfKgHRebpkm/oP2VQ==", 1302 | "optional": true, 1303 | "bin": { 1304 | "image-size": "bin/image-size.js" 1305 | }, 1306 | "engines": { 1307 | "node": ">=0.10.0" 1308 | } 1309 | }, 1310 | "node_modules/import-fresh": { 1311 | "version": "3.3.0", 1312 | "resolved": "https://registry.npmmirror.com/import-fresh/-/import-fresh-3.3.0.tgz", 1313 | "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", 1314 | "dev": true, 1315 | "dependencies": { 1316 | "parent-module": "^1.0.0", 1317 | "resolve-from": "^4.0.0" 1318 | }, 1319 | "engines": { 1320 | "node": ">=6" 1321 | } 1322 | }, 1323 | "node_modules/imurmurhash": { 1324 | "version": "0.1.4", 1325 | "resolved": "https://registry.npmmirror.com/imurmurhash/-/imurmurhash-0.1.4.tgz", 1326 | "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", 1327 | "dev": true, 1328 | "engines": { 1329 | "node": ">=0.8.19" 1330 | } 1331 | }, 1332 | "node_modules/inflight": { 1333 | "version": "1.0.6", 1334 | "resolved": "https://registry.npmmirror.com/inflight/-/inflight-1.0.6.tgz", 1335 | "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", 1336 | "dev": true, 1337 | "dependencies": { 1338 | "once": "^1.3.0", 1339 | "wrappy": "1" 1340 | } 1341 | }, 1342 | "node_modules/inherits": { 1343 | "version": "2.0.4", 1344 | "resolved": "https://registry.npmmirror.com/inherits/-/inherits-2.0.4.tgz", 1345 | "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", 1346 | "dev": true 1347 | }, 1348 | "node_modules/is-core-module": { 1349 | "version": "2.11.0", 1350 | "resolved": "https://registry.npmmirror.com/is-core-module/-/is-core-module-2.11.0.tgz", 1351 | "integrity": "sha512-RRjxlvLDkD1YJwDbroBHMb+cukurkDWNyHx7D3oNB5x9rb5ogcksMC5wHCadcXoo67gVr/+3GFySh3134zi6rw==", 1352 | "dev": true, 1353 | "dependencies": { 1354 | "has": "^1.0.3" 1355 | } 1356 | }, 1357 | "node_modules/is-extglob": { 1358 | "version": "2.1.1", 1359 | "resolved": "https://registry.npmmirror.com/is-extglob/-/is-extglob-2.1.1.tgz", 1360 | "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", 1361 | "dev": true, 1362 | "engines": { 1363 | "node": ">=0.10.0" 1364 | } 1365 | }, 1366 | "node_modules/is-glob": { 1367 | "version": "4.0.3", 1368 | "resolved": "https://registry.npmmirror.com/is-glob/-/is-glob-4.0.3.tgz", 1369 | "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", 1370 | "dev": true, 1371 | "dependencies": { 1372 | "is-extglob": "^2.1.1" 1373 | }, 1374 | "engines": { 1375 | "node": ">=0.10.0" 1376 | } 1377 | }, 1378 | "node_modules/is-path-inside": { 1379 | "version": "3.0.3", 1380 | "resolved": "https://registry.npmmirror.com/is-path-inside/-/is-path-inside-3.0.3.tgz", 1381 | "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==", 1382 | "dev": true, 1383 | "engines": { 1384 | "node": ">=8" 1385 | } 1386 | }, 1387 | "node_modules/is-what": { 1388 | "version": "3.14.1", 1389 | "resolved": "https://registry.npmmirror.com/is-what/-/is-what-3.14.1.tgz", 1390 | "integrity": "sha512-sNxgpk9793nzSs7bA6JQJGeIuRBQhAaNGG77kzYQgMkrID+lS6SlK07K5LaptscDlSaIgH+GPFzf+d75FVxozA==" 1391 | }, 1392 | "node_modules/isexe": { 1393 | "version": "2.0.0", 1394 | "resolved": "https://registry.npmmirror.com/isexe/-/isexe-2.0.0.tgz", 1395 | "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", 1396 | "dev": true 1397 | }, 1398 | "node_modules/js-sdsl": { 1399 | "version": "4.2.0", 1400 | "resolved": "https://registry.npmmirror.com/js-sdsl/-/js-sdsl-4.2.0.tgz", 1401 | "integrity": "sha512-dyBIzQBDkCqCu+0upx25Y2jGdbTGxE9fshMsCdK0ViOongpV+n5tXRcZY9v7CaVQ79AGS9KA1KHtojxiM7aXSQ==", 1402 | "dev": true 1403 | }, 1404 | "node_modules/js-yaml": { 1405 | "version": "4.1.0", 1406 | "resolved": "https://registry.npmmirror.com/js-yaml/-/js-yaml-4.1.0.tgz", 1407 | "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", 1408 | "dev": true, 1409 | "dependencies": { 1410 | "argparse": "^2.0.1" 1411 | }, 1412 | "bin": { 1413 | "js-yaml": "bin/js-yaml.js" 1414 | } 1415 | }, 1416 | "node_modules/json-schema-traverse": { 1417 | "version": "0.4.1", 1418 | "resolved": "https://registry.npmmirror.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", 1419 | "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", 1420 | "dev": true 1421 | }, 1422 | "node_modules/json-stable-stringify-without-jsonify": { 1423 | "version": "1.0.1", 1424 | "resolved": "https://registry.npmmirror.com/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", 1425 | "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", 1426 | "dev": true 1427 | }, 1428 | "node_modules/less": { 1429 | "version": "4.1.3", 1430 | "resolved": "https://registry.npmmirror.com/less/-/less-4.1.3.tgz", 1431 | "integrity": "sha512-w16Xk/Ta9Hhyei0Gpz9m7VS8F28nieJaL/VyShID7cYvP6IL5oHeL6p4TXSDJqZE/lNv0oJ2pGVjJsRkfwm5FA==", 1432 | "dependencies": { 1433 | "copy-anything": "^2.0.1", 1434 | "parse-node-version": "^1.0.1", 1435 | "tslib": "^2.3.0" 1436 | }, 1437 | "bin": { 1438 | "lessc": "bin/lessc" 1439 | }, 1440 | "engines": { 1441 | "node": ">=6" 1442 | }, 1443 | "optionalDependencies": { 1444 | "errno": "^0.1.1", 1445 | "graceful-fs": "^4.1.2", 1446 | "image-size": "~0.5.0", 1447 | "make-dir": "^2.1.0", 1448 | "mime": "^1.4.1", 1449 | "needle": "^3.1.0", 1450 | "source-map": "~0.6.0" 1451 | } 1452 | }, 1453 | "node_modules/levn": { 1454 | "version": "0.4.1", 1455 | "resolved": "https://registry.npmmirror.com/levn/-/levn-0.4.1.tgz", 1456 | "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", 1457 | "dev": true, 1458 | "dependencies": { 1459 | "prelude-ls": "^1.2.1", 1460 | "type-check": "~0.4.0" 1461 | }, 1462 | "engines": { 1463 | "node": ">= 0.8.0" 1464 | } 1465 | }, 1466 | "node_modules/locate-path": { 1467 | "version": "6.0.0", 1468 | "resolved": "https://registry.npmmirror.com/locate-path/-/locate-path-6.0.0.tgz", 1469 | "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", 1470 | "dev": true, 1471 | "dependencies": { 1472 | "p-locate": "^5.0.0" 1473 | }, 1474 | "engines": { 1475 | "node": ">=10" 1476 | } 1477 | }, 1478 | "node_modules/lodash": { 1479 | "version": "4.17.21", 1480 | "resolved": "https://registry.npmmirror.com/lodash/-/lodash-4.17.21.tgz", 1481 | "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", 1482 | "dev": true 1483 | }, 1484 | "node_modules/lodash.merge": { 1485 | "version": "4.6.2", 1486 | "resolved": "https://registry.npmmirror.com/lodash.merge/-/lodash.merge-4.6.2.tgz", 1487 | "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", 1488 | "dev": true 1489 | }, 1490 | "node_modules/lru-cache": { 1491 | "version": "6.0.0", 1492 | "resolved": "https://registry.npmmirror.com/lru-cache/-/lru-cache-6.0.0.tgz", 1493 | "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", 1494 | "dev": true, 1495 | "dependencies": { 1496 | "yallist": "^4.0.0" 1497 | }, 1498 | "engines": { 1499 | "node": ">=10" 1500 | } 1501 | }, 1502 | "node_modules/magic-string": { 1503 | "version": "0.25.9", 1504 | "resolved": "https://registry.npmmirror.com/magic-string/-/magic-string-0.25.9.tgz", 1505 | "integrity": "sha512-RmF0AsMzgt25qzqqLc1+MbHmhdx0ojF2Fvs4XnOqz2ZOBXzzkEwc/dJQZCYHAn7v1jbVOjAZfK8msRn4BxO4VQ==", 1506 | "dependencies": { 1507 | "sourcemap-codec": "^1.4.8" 1508 | } 1509 | }, 1510 | "node_modules/make-dir": { 1511 | "version": "2.1.0", 1512 | "resolved": "https://registry.npmmirror.com/make-dir/-/make-dir-2.1.0.tgz", 1513 | "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", 1514 | "optional": true, 1515 | "dependencies": { 1516 | "pify": "^4.0.1", 1517 | "semver": "^5.6.0" 1518 | }, 1519 | "engines": { 1520 | "node": ">=6" 1521 | } 1522 | }, 1523 | "node_modules/make-dir/node_modules/semver": { 1524 | "version": "5.7.1", 1525 | "resolved": "https://registry.npmmirror.com/semver/-/semver-5.7.1.tgz", 1526 | "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", 1527 | "optional": true, 1528 | "bin": { 1529 | "semver": "bin/semver" 1530 | } 1531 | }, 1532 | "node_modules/mime": { 1533 | "version": "1.6.0", 1534 | "resolved": "https://registry.npmmirror.com/mime/-/mime-1.6.0.tgz", 1535 | "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", 1536 | "optional": true, 1537 | "bin": { 1538 | "mime": "cli.js" 1539 | }, 1540 | "engines": { 1541 | "node": ">=4" 1542 | } 1543 | }, 1544 | "node_modules/mime-db": { 1545 | "version": "1.52.0", 1546 | "resolved": "https://registry.npmmirror.com/mime-db/-/mime-db-1.52.0.tgz", 1547 | "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", 1548 | "engines": { 1549 | "node": ">= 0.6" 1550 | } 1551 | }, 1552 | "node_modules/mime-types": { 1553 | "version": "2.1.35", 1554 | "resolved": "https://registry.npmmirror.com/mime-types/-/mime-types-2.1.35.tgz", 1555 | "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", 1556 | "dependencies": { 1557 | "mime-db": "1.52.0" 1558 | }, 1559 | "engines": { 1560 | "node": ">= 0.6" 1561 | } 1562 | }, 1563 | "node_modules/minimatch": { 1564 | "version": "3.1.2", 1565 | "resolved": "https://registry.npmmirror.com/minimatch/-/minimatch-3.1.2.tgz", 1566 | "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", 1567 | "dev": true, 1568 | "dependencies": { 1569 | "brace-expansion": "^1.1.7" 1570 | }, 1571 | "engines": { 1572 | "node": "*" 1573 | } 1574 | }, 1575 | "node_modules/ms": { 1576 | "version": "2.1.2", 1577 | "resolved": "https://registry.npmmirror.com/ms/-/ms-2.1.2.tgz", 1578 | "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", 1579 | "devOptional": true 1580 | }, 1581 | "node_modules/nanoid": { 1582 | "version": "3.3.4", 1583 | "resolved": "https://registry.npmmirror.com/nanoid/-/nanoid-3.3.4.tgz", 1584 | "integrity": "sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==", 1585 | "bin": { 1586 | "nanoid": "bin/nanoid.cjs" 1587 | }, 1588 | "engines": { 1589 | "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" 1590 | } 1591 | }, 1592 | "node_modules/natural-compare": { 1593 | "version": "1.4.0", 1594 | "resolved": "https://registry.npmmirror.com/natural-compare/-/natural-compare-1.4.0.tgz", 1595 | "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", 1596 | "dev": true 1597 | }, 1598 | "node_modules/needle": { 1599 | "version": "3.2.0", 1600 | "resolved": "https://registry.npmmirror.com/needle/-/needle-3.2.0.tgz", 1601 | "integrity": "sha512-oUvzXnyLiVyVGoianLijF9O/RecZUf7TkBfimjGrLM4eQhXyeJwM6GeAWccwfQ9aa4gMCZKqhAOuLaMIcQxajQ==", 1602 | "optional": true, 1603 | "dependencies": { 1604 | "debug": "^3.2.6", 1605 | "iconv-lite": "^0.6.3", 1606 | "sax": "^1.2.4" 1607 | }, 1608 | "bin": { 1609 | "needle": "bin/needle" 1610 | }, 1611 | "engines": { 1612 | "node": ">= 4.4.x" 1613 | } 1614 | }, 1615 | "node_modules/needle/node_modules/debug": { 1616 | "version": "3.2.7", 1617 | "resolved": "https://registry.npmmirror.com/debug/-/debug-3.2.7.tgz", 1618 | "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", 1619 | "optional": true, 1620 | "dependencies": { 1621 | "ms": "^2.1.1" 1622 | } 1623 | }, 1624 | "node_modules/nth-check": { 1625 | "version": "2.1.1", 1626 | "resolved": "https://registry.npmmirror.com/nth-check/-/nth-check-2.1.1.tgz", 1627 | "integrity": "sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==", 1628 | "dev": true, 1629 | "dependencies": { 1630 | "boolbase": "^1.0.0" 1631 | } 1632 | }, 1633 | "node_modules/once": { 1634 | "version": "1.4.0", 1635 | "resolved": "https://registry.npmmirror.com/once/-/once-1.4.0.tgz", 1636 | "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", 1637 | "dev": true, 1638 | "dependencies": { 1639 | "wrappy": "1" 1640 | } 1641 | }, 1642 | "node_modules/optionator": { 1643 | "version": "0.9.1", 1644 | "resolved": "https://registry.npmmirror.com/optionator/-/optionator-0.9.1.tgz", 1645 | "integrity": "sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==", 1646 | "dev": true, 1647 | "dependencies": { 1648 | "deep-is": "^0.1.3", 1649 | "fast-levenshtein": "^2.0.6", 1650 | "levn": "^0.4.1", 1651 | "prelude-ls": "^1.2.1", 1652 | "type-check": "^0.4.0", 1653 | "word-wrap": "^1.2.3" 1654 | }, 1655 | "engines": { 1656 | "node": ">= 0.8.0" 1657 | } 1658 | }, 1659 | "node_modules/p-limit": { 1660 | "version": "3.1.0", 1661 | "resolved": "https://registry.npmmirror.com/p-limit/-/p-limit-3.1.0.tgz", 1662 | "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", 1663 | "dev": true, 1664 | "dependencies": { 1665 | "yocto-queue": "^0.1.0" 1666 | }, 1667 | "engines": { 1668 | "node": ">=10" 1669 | } 1670 | }, 1671 | "node_modules/p-locate": { 1672 | "version": "5.0.0", 1673 | "resolved": "https://registry.npmmirror.com/p-locate/-/p-locate-5.0.0.tgz", 1674 | "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", 1675 | "dev": true, 1676 | "dependencies": { 1677 | "p-limit": "^3.0.2" 1678 | }, 1679 | "engines": { 1680 | "node": ">=10" 1681 | } 1682 | }, 1683 | "node_modules/parent-module": { 1684 | "version": "1.0.1", 1685 | "resolved": "https://registry.npmmirror.com/parent-module/-/parent-module-1.0.1.tgz", 1686 | "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", 1687 | "dev": true, 1688 | "dependencies": { 1689 | "callsites": "^3.0.0" 1690 | }, 1691 | "engines": { 1692 | "node": ">=6" 1693 | } 1694 | }, 1695 | "node_modules/parse-node-version": { 1696 | "version": "1.0.1", 1697 | "resolved": "https://registry.npmmirror.com/parse-node-version/-/parse-node-version-1.0.1.tgz", 1698 | "integrity": "sha512-3YHlOa/JgH6Mnpr05jP9eDG254US9ek25LyIxZlDItp2iJtwyaXQb57lBYLdT3MowkUFYEV2XXNAYIPlESvJlA==", 1699 | "engines": { 1700 | "node": ">= 0.10" 1701 | } 1702 | }, 1703 | "node_modules/path-exists": { 1704 | "version": "4.0.0", 1705 | "resolved": "https://registry.npmmirror.com/path-exists/-/path-exists-4.0.0.tgz", 1706 | "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", 1707 | "dev": true, 1708 | "engines": { 1709 | "node": ">=8" 1710 | } 1711 | }, 1712 | "node_modules/path-is-absolute": { 1713 | "version": "1.0.1", 1714 | "resolved": "https://registry.npmmirror.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz", 1715 | "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", 1716 | "dev": true, 1717 | "engines": { 1718 | "node": ">=0.10.0" 1719 | } 1720 | }, 1721 | "node_modules/path-key": { 1722 | "version": "3.1.1", 1723 | "resolved": "https://registry.npmmirror.com/path-key/-/path-key-3.1.1.tgz", 1724 | "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", 1725 | "dev": true, 1726 | "engines": { 1727 | "node": ">=8" 1728 | } 1729 | }, 1730 | "node_modules/path-parse": { 1731 | "version": "1.0.7", 1732 | "resolved": "https://registry.npmmirror.com/path-parse/-/path-parse-1.0.7.tgz", 1733 | "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", 1734 | "dev": true 1735 | }, 1736 | "node_modules/picocolors": { 1737 | "version": "1.0.0", 1738 | "resolved": "https://registry.npmmirror.com/picocolors/-/picocolors-1.0.0.tgz", 1739 | "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==" 1740 | }, 1741 | "node_modules/pify": { 1742 | "version": "4.0.1", 1743 | "resolved": "https://registry.npmmirror.com/pify/-/pify-4.0.1.tgz", 1744 | "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", 1745 | "optional": true, 1746 | "engines": { 1747 | "node": ">=6" 1748 | } 1749 | }, 1750 | "node_modules/postcss": { 1751 | "version": "8.4.21", 1752 | "resolved": "https://registry.npmmirror.com/postcss/-/postcss-8.4.21.tgz", 1753 | "integrity": "sha512-tP7u/Sn/dVxK2NnruI4H9BG+x+Wxz6oeZ1cJ8P6G/PZY0IKk4k/63TDsQf2kQq3+qoJeLm2kIBUNlZe3zgb4Zg==", 1754 | "dependencies": { 1755 | "nanoid": "^3.3.4", 1756 | "picocolors": "^1.0.0", 1757 | "source-map-js": "^1.0.2" 1758 | }, 1759 | "engines": { 1760 | "node": "^10 || ^12 || >=14" 1761 | } 1762 | }, 1763 | "node_modules/postcss-selector-parser": { 1764 | "version": "6.0.11", 1765 | "resolved": "https://registry.npmmirror.com/postcss-selector-parser/-/postcss-selector-parser-6.0.11.tgz", 1766 | "integrity": "sha512-zbARubNdogI9j7WY4nQJBiNqQf3sLS3wCP4WfOidu+p28LofJqDH1tcXypGrcmMHhDk2t9wGhCsYe/+szLTy1g==", 1767 | "dev": true, 1768 | "dependencies": { 1769 | "cssesc": "^3.0.0", 1770 | "util-deprecate": "^1.0.2" 1771 | }, 1772 | "engines": { 1773 | "node": ">=4" 1774 | } 1775 | }, 1776 | "node_modules/prelude-ls": { 1777 | "version": "1.2.1", 1778 | "resolved": "https://registry.npmmirror.com/prelude-ls/-/prelude-ls-1.2.1.tgz", 1779 | "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", 1780 | "dev": true, 1781 | "engines": { 1782 | "node": ">= 0.8.0" 1783 | } 1784 | }, 1785 | "node_modules/proxy-from-env": { 1786 | "version": "1.1.0", 1787 | "resolved": "https://registry.npmmirror.com/proxy-from-env/-/proxy-from-env-1.1.0.tgz", 1788 | "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==" 1789 | }, 1790 | "node_modules/prr": { 1791 | "version": "1.0.1", 1792 | "resolved": "https://registry.npmmirror.com/prr/-/prr-1.0.1.tgz", 1793 | "integrity": "sha512-yPw4Sng1gWghHQWj0B3ZggWUm4qVbPwPFcRG8KyxiU7J2OHFSoEHKS+EZ3fv5l1t9CyCiop6l/ZYeWbrgoQejw==", 1794 | "optional": true 1795 | }, 1796 | "node_modules/punycode": { 1797 | "version": "2.2.0", 1798 | "resolved": "https://registry.npmmirror.com/punycode/-/punycode-2.2.0.tgz", 1799 | "integrity": "sha512-LN6QV1IJ9ZhxWTNdktaPClrNfp8xdSAYS0Zk2ddX7XsXZAxckMHPCBcHRo0cTcEIgYPRiGEkmji3Idkh2yFtYw==", 1800 | "dev": true, 1801 | "engines": { 1802 | "node": ">=6" 1803 | } 1804 | }, 1805 | "node_modules/queue-microtask": { 1806 | "version": "1.2.3", 1807 | "resolved": "https://registry.npmmirror.com/queue-microtask/-/queue-microtask-1.2.3.tgz", 1808 | "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", 1809 | "dev": true 1810 | }, 1811 | "node_modules/regexpp": { 1812 | "version": "3.2.0", 1813 | "resolved": "https://registry.npmmirror.com/regexpp/-/regexpp-3.2.0.tgz", 1814 | "integrity": "sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==", 1815 | "dev": true, 1816 | "engines": { 1817 | "node": ">=8" 1818 | } 1819 | }, 1820 | "node_modules/resolve": { 1821 | "version": "1.22.1", 1822 | "resolved": "https://registry.npmmirror.com/resolve/-/resolve-1.22.1.tgz", 1823 | "integrity": "sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==", 1824 | "dev": true, 1825 | "dependencies": { 1826 | "is-core-module": "^2.9.0", 1827 | "path-parse": "^1.0.7", 1828 | "supports-preserve-symlinks-flag": "^1.0.0" 1829 | }, 1830 | "bin": { 1831 | "resolve": "bin/resolve" 1832 | } 1833 | }, 1834 | "node_modules/resolve-from": { 1835 | "version": "4.0.0", 1836 | "resolved": "https://registry.npmmirror.com/resolve-from/-/resolve-from-4.0.0.tgz", 1837 | "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", 1838 | "dev": true, 1839 | "engines": { 1840 | "node": ">=4" 1841 | } 1842 | }, 1843 | "node_modules/reusify": { 1844 | "version": "1.0.4", 1845 | "resolved": "https://registry.npmmirror.com/reusify/-/reusify-1.0.4.tgz", 1846 | "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", 1847 | "dev": true, 1848 | "engines": { 1849 | "iojs": ">=1.0.0", 1850 | "node": ">=0.10.0" 1851 | } 1852 | }, 1853 | "node_modules/rimraf": { 1854 | "version": "3.0.2", 1855 | "resolved": "https://registry.npmmirror.com/rimraf/-/rimraf-3.0.2.tgz", 1856 | "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", 1857 | "dev": true, 1858 | "dependencies": { 1859 | "glob": "^7.1.3" 1860 | }, 1861 | "bin": { 1862 | "rimraf": "bin.js" 1863 | } 1864 | }, 1865 | "node_modules/rollup": { 1866 | "version": "3.10.0", 1867 | "resolved": "https://registry.npmmirror.com/rollup/-/rollup-3.10.0.tgz", 1868 | "integrity": "sha512-JmRYz44NjC1MjVF2VKxc0M1a97vn+cDxeqWmnwyAF4FvpjK8YFdHpaqvQB+3IxCvX05vJxKZkoMDU8TShhmJVA==", 1869 | "dev": true, 1870 | "bin": { 1871 | "rollup": "dist/bin/rollup" 1872 | }, 1873 | "engines": { 1874 | "node": ">=14.18.0", 1875 | "npm": ">=8.0.0" 1876 | }, 1877 | "optionalDependencies": { 1878 | "fsevents": "~2.3.2" 1879 | } 1880 | }, 1881 | "node_modules/run-parallel": { 1882 | "version": "1.2.0", 1883 | "resolved": "https://registry.npmmirror.com/run-parallel/-/run-parallel-1.2.0.tgz", 1884 | "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", 1885 | "dev": true, 1886 | "dependencies": { 1887 | "queue-microtask": "^1.2.2" 1888 | } 1889 | }, 1890 | "node_modules/safer-buffer": { 1891 | "version": "2.1.2", 1892 | "resolved": "https://registry.npmmirror.com/safer-buffer/-/safer-buffer-2.1.2.tgz", 1893 | "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", 1894 | "optional": true 1895 | }, 1896 | "node_modules/sax": { 1897 | "version": "1.2.4", 1898 | "resolved": "https://registry.npmmirror.com/sax/-/sax-1.2.4.tgz", 1899 | "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==", 1900 | "optional": true 1901 | }, 1902 | "node_modules/semver": { 1903 | "version": "7.3.8", 1904 | "resolved": "https://registry.npmmirror.com/semver/-/semver-7.3.8.tgz", 1905 | "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", 1906 | "dev": true, 1907 | "dependencies": { 1908 | "lru-cache": "^6.0.0" 1909 | }, 1910 | "bin": { 1911 | "semver": "bin/semver.js" 1912 | }, 1913 | "engines": { 1914 | "node": ">=10" 1915 | } 1916 | }, 1917 | "node_modules/shebang-command": { 1918 | "version": "2.0.0", 1919 | "resolved": "https://registry.npmmirror.com/shebang-command/-/shebang-command-2.0.0.tgz", 1920 | "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", 1921 | "dev": true, 1922 | "dependencies": { 1923 | "shebang-regex": "^3.0.0" 1924 | }, 1925 | "engines": { 1926 | "node": ">=8" 1927 | } 1928 | }, 1929 | "node_modules/shebang-regex": { 1930 | "version": "3.0.0", 1931 | "resolved": "https://registry.npmmirror.com/shebang-regex/-/shebang-regex-3.0.0.tgz", 1932 | "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", 1933 | "dev": true, 1934 | "engines": { 1935 | "node": ">=8" 1936 | } 1937 | }, 1938 | "node_modules/source-map": { 1939 | "version": "0.6.1", 1940 | "resolved": "https://registry.npmmirror.com/source-map/-/source-map-0.6.1.tgz", 1941 | "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", 1942 | "engines": { 1943 | "node": ">=0.10.0" 1944 | } 1945 | }, 1946 | "node_modules/source-map-js": { 1947 | "version": "1.0.2", 1948 | "resolved": "https://registry.npmmirror.com/source-map-js/-/source-map-js-1.0.2.tgz", 1949 | "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==", 1950 | "engines": { 1951 | "node": ">=0.10.0" 1952 | } 1953 | }, 1954 | "node_modules/sourcemap-codec": { 1955 | "version": "1.4.8", 1956 | "resolved": "https://registry.npmmirror.com/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz", 1957 | "integrity": "sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==", 1958 | "deprecated": "Please use @jridgewell/sourcemap-codec instead" 1959 | }, 1960 | "node_modules/strip-ansi": { 1961 | "version": "6.0.1", 1962 | "resolved": "https://registry.npmmirror.com/strip-ansi/-/strip-ansi-6.0.1.tgz", 1963 | "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", 1964 | "dev": true, 1965 | "dependencies": { 1966 | "ansi-regex": "^5.0.1" 1967 | }, 1968 | "engines": { 1969 | "node": ">=8" 1970 | } 1971 | }, 1972 | "node_modules/strip-json-comments": { 1973 | "version": "3.1.1", 1974 | "resolved": "https://registry.npmmirror.com/strip-json-comments/-/strip-json-comments-3.1.1.tgz", 1975 | "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", 1976 | "dev": true, 1977 | "engines": { 1978 | "node": ">=8" 1979 | } 1980 | }, 1981 | "node_modules/supports-color": { 1982 | "version": "7.2.0", 1983 | "resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-7.2.0.tgz", 1984 | "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", 1985 | "dev": true, 1986 | "dependencies": { 1987 | "has-flag": "^4.0.0" 1988 | }, 1989 | "engines": { 1990 | "node": ">=8" 1991 | } 1992 | }, 1993 | "node_modules/supports-preserve-symlinks-flag": { 1994 | "version": "1.0.0", 1995 | "resolved": "https://registry.npmmirror.com/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", 1996 | "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", 1997 | "dev": true, 1998 | "engines": { 1999 | "node": ">= 0.4" 2000 | } 2001 | }, 2002 | "node_modules/text-table": { 2003 | "version": "0.2.0", 2004 | "resolved": "https://registry.npmmirror.com/text-table/-/text-table-0.2.0.tgz", 2005 | "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==", 2006 | "dev": true 2007 | }, 2008 | "node_modules/tslib": { 2009 | "version": "2.4.1", 2010 | "resolved": "https://registry.npmmirror.com/tslib/-/tslib-2.4.1.tgz", 2011 | "integrity": "sha512-tGyy4dAjRIEwI7BzsB0lynWgOpfqjUdq91XXAlIWD2OwKBH7oCl/GZG/HT4BOHrTlPMOASlMQ7veyTqpmRcrNA==" 2012 | }, 2013 | "node_modules/type-check": { 2014 | "version": "0.4.0", 2015 | "resolved": "https://registry.npmmirror.com/type-check/-/type-check-0.4.0.tgz", 2016 | "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", 2017 | "dev": true, 2018 | "dependencies": { 2019 | "prelude-ls": "^1.2.1" 2020 | }, 2021 | "engines": { 2022 | "node": ">= 0.8.0" 2023 | } 2024 | }, 2025 | "node_modules/type-fest": { 2026 | "version": "0.20.2", 2027 | "resolved": "https://registry.npmmirror.com/type-fest/-/type-fest-0.20.2.tgz", 2028 | "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", 2029 | "dev": true, 2030 | "engines": { 2031 | "node": ">=10" 2032 | } 2033 | }, 2034 | "node_modules/uri-js": { 2035 | "version": "4.4.1", 2036 | "resolved": "https://registry.npmmirror.com/uri-js/-/uri-js-4.4.1.tgz", 2037 | "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", 2038 | "dev": true, 2039 | "dependencies": { 2040 | "punycode": "^2.1.0" 2041 | } 2042 | }, 2043 | "node_modules/util-deprecate": { 2044 | "version": "1.0.2", 2045 | "resolved": "https://registry.npmmirror.com/util-deprecate/-/util-deprecate-1.0.2.tgz", 2046 | "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", 2047 | "dev": true 2048 | }, 2049 | "node_modules/vite": { 2050 | "version": "4.0.4", 2051 | "resolved": "https://registry.npmmirror.com/vite/-/vite-4.0.4.tgz", 2052 | "integrity": "sha512-xevPU7M8FU0i/80DMR+YhgrzR5KS2ORy1B4xcX/cXLsvnUWvfHuqMmVU6N0YiJ4JWGRJJsLCgjEzKjG9/GKoSw==", 2053 | "dev": true, 2054 | "dependencies": { 2055 | "esbuild": "^0.16.3", 2056 | "postcss": "^8.4.20", 2057 | "resolve": "^1.22.1", 2058 | "rollup": "^3.7.0" 2059 | }, 2060 | "bin": { 2061 | "vite": "bin/vite.js" 2062 | }, 2063 | "engines": { 2064 | "node": "^14.18.0 || >=16.0.0" 2065 | }, 2066 | "optionalDependencies": { 2067 | "fsevents": "~2.3.2" 2068 | }, 2069 | "peerDependencies": { 2070 | "@types/node": ">= 14", 2071 | "less": "*", 2072 | "sass": "*", 2073 | "stylus": "*", 2074 | "sugarss": "*", 2075 | "terser": "^5.4.0" 2076 | }, 2077 | "peerDependenciesMeta": { 2078 | "@types/node": { 2079 | "optional": true 2080 | }, 2081 | "less": { 2082 | "optional": true 2083 | }, 2084 | "sass": { 2085 | "optional": true 2086 | }, 2087 | "stylus": { 2088 | "optional": true 2089 | }, 2090 | "sugarss": { 2091 | "optional": true 2092 | }, 2093 | "terser": { 2094 | "optional": true 2095 | } 2096 | } 2097 | }, 2098 | "node_modules/vue": { 2099 | "version": "3.2.45", 2100 | "resolved": "https://registry.npmmirror.com/vue/-/vue-3.2.45.tgz", 2101 | "integrity": "sha512-9Nx/Mg2b2xWlXykmCwiTUCWHbWIj53bnkizBxKai1g61f2Xit700A1ljowpTIM11e3uipOeiPcSqnmBg6gyiaA==", 2102 | "dependencies": { 2103 | "@vue/compiler-dom": "3.2.45", 2104 | "@vue/compiler-sfc": "3.2.45", 2105 | "@vue/runtime-dom": "3.2.45", 2106 | "@vue/server-renderer": "3.2.45", 2107 | "@vue/shared": "3.2.45" 2108 | } 2109 | }, 2110 | "node_modules/vue-eslint-parser": { 2111 | "version": "9.1.0", 2112 | "resolved": "https://registry.npmmirror.com/vue-eslint-parser/-/vue-eslint-parser-9.1.0.tgz", 2113 | "integrity": "sha512-NGn/iQy8/Wb7RrRa4aRkokyCZfOUWk19OP5HP6JEozQFX5AoS/t+Z0ZN7FY4LlmWc4FNI922V7cvX28zctN8dQ==", 2114 | "dev": true, 2115 | "dependencies": { 2116 | "debug": "^4.3.4", 2117 | "eslint-scope": "^7.1.1", 2118 | "eslint-visitor-keys": "^3.3.0", 2119 | "espree": "^9.3.1", 2120 | "esquery": "^1.4.0", 2121 | "lodash": "^4.17.21", 2122 | "semver": "^7.3.6" 2123 | }, 2124 | "engines": { 2125 | "node": "^14.17.0 || >=16.0.0" 2126 | }, 2127 | "peerDependencies": { 2128 | "eslint": ">=6.0.0" 2129 | } 2130 | }, 2131 | "node_modules/vue-router": { 2132 | "version": "4.1.6", 2133 | "resolved": "https://registry.npmmirror.com/vue-router/-/vue-router-4.1.6.tgz", 2134 | "integrity": "sha512-DYWYwsG6xNPmLq/FmZn8Ip+qrhFEzA14EI12MsMgVxvHFDYvlr4NXpVF5hrRH1wVcDP8fGi5F4rxuJSl8/r+EQ==", 2135 | "dependencies": { 2136 | "@vue/devtools-api": "^6.4.5" 2137 | }, 2138 | "peerDependencies": { 2139 | "vue": "^3.2.0" 2140 | } 2141 | }, 2142 | "node_modules/which": { 2143 | "version": "2.0.2", 2144 | "resolved": "https://registry.npmmirror.com/which/-/which-2.0.2.tgz", 2145 | "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", 2146 | "dev": true, 2147 | "dependencies": { 2148 | "isexe": "^2.0.0" 2149 | }, 2150 | "bin": { 2151 | "node-which": "bin/node-which" 2152 | }, 2153 | "engines": { 2154 | "node": ">= 8" 2155 | } 2156 | }, 2157 | "node_modules/word-wrap": { 2158 | "version": "1.2.3", 2159 | "resolved": "https://registry.npmmirror.com/word-wrap/-/word-wrap-1.2.3.tgz", 2160 | "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==", 2161 | "dev": true, 2162 | "engines": { 2163 | "node": ">=0.10.0" 2164 | } 2165 | }, 2166 | "node_modules/wrappy": { 2167 | "version": "1.0.2", 2168 | "resolved": "https://registry.npmmirror.com/wrappy/-/wrappy-1.0.2.tgz", 2169 | "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", 2170 | "dev": true 2171 | }, 2172 | "node_modules/xml-name-validator": { 2173 | "version": "4.0.0", 2174 | "resolved": "https://registry.npmmirror.com/xml-name-validator/-/xml-name-validator-4.0.0.tgz", 2175 | "integrity": "sha512-ICP2e+jsHvAj2E2lIHxa5tjXRlKDJo4IdvPvCXbXQGdzSfmSpNVyIKMvoZHjDY9DP0zV17iI85o90vRFXNccRw==", 2176 | "dev": true, 2177 | "engines": { 2178 | "node": ">=12" 2179 | } 2180 | }, 2181 | "node_modules/yallist": { 2182 | "version": "4.0.0", 2183 | "resolved": "https://registry.npmmirror.com/yallist/-/yallist-4.0.0.tgz", 2184 | "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", 2185 | "dev": true 2186 | }, 2187 | "node_modules/yocto-queue": { 2188 | "version": "0.1.0", 2189 | "resolved": "https://registry.npmmirror.com/yocto-queue/-/yocto-queue-0.1.0.tgz", 2190 | "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", 2191 | "dev": true, 2192 | "engines": { 2193 | "node": ">=10" 2194 | } 2195 | } 2196 | }, 2197 | "dependencies": { 2198 | "@babel/parser": { 2199 | "version": "7.20.7", 2200 | "resolved": "https://registry.npmmirror.com/@babel/parser/-/parser-7.20.7.tgz", 2201 | "integrity": "sha512-T3Z9oHybU+0vZlY9CiDSJQTD5ZapcW18ZctFMi0MOAl/4BjFF4ul7NVSARLdbGO5vDqy9eQiGTV0LtKfvCYvcg==" 2202 | }, 2203 | "@esbuild/android-arm": { 2204 | "version": "0.16.17", 2205 | "resolved": "https://registry.npmmirror.com/@esbuild/android-arm/-/android-arm-0.16.17.tgz", 2206 | "integrity": "sha512-N9x1CMXVhtWEAMS7pNNONyA14f71VPQN9Cnavj1XQh6T7bskqiLLrSca4O0Vr8Wdcga943eThxnVp3JLnBMYtw==", 2207 | "dev": true, 2208 | "optional": true 2209 | }, 2210 | "@esbuild/android-arm64": { 2211 | "version": "0.16.17", 2212 | "resolved": "https://registry.npmmirror.com/@esbuild/android-arm64/-/android-arm64-0.16.17.tgz", 2213 | "integrity": "sha512-MIGl6p5sc3RDTLLkYL1MyL8BMRN4tLMRCn+yRJJmEDvYZ2M7tmAf80hx1kbNEUX2KJ50RRtxZ4JHLvCfuB6kBg==", 2214 | "dev": true, 2215 | "optional": true 2216 | }, 2217 | "@esbuild/android-x64": { 2218 | "version": "0.16.17", 2219 | "resolved": "https://registry.npmmirror.com/@esbuild/android-x64/-/android-x64-0.16.17.tgz", 2220 | "integrity": "sha512-a3kTv3m0Ghh4z1DaFEuEDfz3OLONKuFvI4Xqczqx4BqLyuFaFkuaG4j2MtA6fuWEFeC5x9IvqnX7drmRq/fyAQ==", 2221 | "dev": true, 2222 | "optional": true 2223 | }, 2224 | "@esbuild/darwin-arm64": { 2225 | "version": "0.16.17", 2226 | "resolved": "https://registry.npmmirror.com/@esbuild/darwin-arm64/-/darwin-arm64-0.16.17.tgz", 2227 | "integrity": "sha512-/2agbUEfmxWHi9ARTX6OQ/KgXnOWfsNlTeLcoV7HSuSTv63E4DqtAc+2XqGw1KHxKMHGZgbVCZge7HXWX9Vn+w==", 2228 | "dev": true, 2229 | "optional": true 2230 | }, 2231 | "@esbuild/darwin-x64": { 2232 | "version": "0.16.17", 2233 | "resolved": "https://registry.npmmirror.com/@esbuild/darwin-x64/-/darwin-x64-0.16.17.tgz", 2234 | "integrity": "sha512-2By45OBHulkd9Svy5IOCZt376Aa2oOkiE9QWUK9fe6Tb+WDr8hXL3dpqi+DeLiMed8tVXspzsTAvd0jUl96wmg==", 2235 | "dev": true, 2236 | "optional": true 2237 | }, 2238 | "@esbuild/freebsd-arm64": { 2239 | "version": "0.16.17", 2240 | "resolved": "https://registry.npmmirror.com/@esbuild/freebsd-arm64/-/freebsd-arm64-0.16.17.tgz", 2241 | "integrity": "sha512-mt+cxZe1tVx489VTb4mBAOo2aKSnJ33L9fr25JXpqQqzbUIw/yzIzi+NHwAXK2qYV1lEFp4OoVeThGjUbmWmdw==", 2242 | "dev": true, 2243 | "optional": true 2244 | }, 2245 | "@esbuild/freebsd-x64": { 2246 | "version": "0.16.17", 2247 | "resolved": "https://registry.npmmirror.com/@esbuild/freebsd-x64/-/freebsd-x64-0.16.17.tgz", 2248 | "integrity": "sha512-8ScTdNJl5idAKjH8zGAsN7RuWcyHG3BAvMNpKOBaqqR7EbUhhVHOqXRdL7oZvz8WNHL2pr5+eIT5c65kA6NHug==", 2249 | "dev": true, 2250 | "optional": true 2251 | }, 2252 | "@esbuild/linux-arm": { 2253 | "version": "0.16.17", 2254 | "resolved": "https://registry.npmmirror.com/@esbuild/linux-arm/-/linux-arm-0.16.17.tgz", 2255 | "integrity": "sha512-iihzrWbD4gIT7j3caMzKb/RsFFHCwqqbrbH9SqUSRrdXkXaygSZCZg1FybsZz57Ju7N/SHEgPyaR0LZ8Zbe9gQ==", 2256 | "dev": true, 2257 | "optional": true 2258 | }, 2259 | "@esbuild/linux-arm64": { 2260 | "version": "0.16.17", 2261 | "resolved": "https://registry.npmmirror.com/@esbuild/linux-arm64/-/linux-arm64-0.16.17.tgz", 2262 | "integrity": "sha512-7S8gJnSlqKGVJunnMCrXHU9Q8Q/tQIxk/xL8BqAP64wchPCTzuM6W3Ra8cIa1HIflAvDnNOt2jaL17vaW+1V0g==", 2263 | "dev": true, 2264 | "optional": true 2265 | }, 2266 | "@esbuild/linux-ia32": { 2267 | "version": "0.16.17", 2268 | "resolved": "https://registry.npmmirror.com/@esbuild/linux-ia32/-/linux-ia32-0.16.17.tgz", 2269 | "integrity": "sha512-kiX69+wcPAdgl3Lonh1VI7MBr16nktEvOfViszBSxygRQqSpzv7BffMKRPMFwzeJGPxcio0pdD3kYQGpqQ2SSg==", 2270 | "dev": true, 2271 | "optional": true 2272 | }, 2273 | "@esbuild/linux-loong64": { 2274 | "version": "0.16.17", 2275 | "resolved": "https://registry.npmmirror.com/@esbuild/linux-loong64/-/linux-loong64-0.16.17.tgz", 2276 | "integrity": "sha512-dTzNnQwembNDhd654cA4QhbS9uDdXC3TKqMJjgOWsC0yNCbpzfWoXdZvp0mY7HU6nzk5E0zpRGGx3qoQg8T2DQ==", 2277 | "dev": true, 2278 | "optional": true 2279 | }, 2280 | "@esbuild/linux-mips64el": { 2281 | "version": "0.16.17", 2282 | "resolved": "https://registry.npmmirror.com/@esbuild/linux-mips64el/-/linux-mips64el-0.16.17.tgz", 2283 | "integrity": "sha512-ezbDkp2nDl0PfIUn0CsQ30kxfcLTlcx4Foz2kYv8qdC6ia2oX5Q3E/8m6lq84Dj/6b0FrkgD582fJMIfHhJfSw==", 2284 | "dev": true, 2285 | "optional": true 2286 | }, 2287 | "@esbuild/linux-ppc64": { 2288 | "version": "0.16.17", 2289 | "resolved": "https://registry.npmmirror.com/@esbuild/linux-ppc64/-/linux-ppc64-0.16.17.tgz", 2290 | "integrity": "sha512-dzS678gYD1lJsW73zrFhDApLVdM3cUF2MvAa1D8K8KtcSKdLBPP4zZSLy6LFZ0jYqQdQ29bjAHJDgz0rVbLB3g==", 2291 | "dev": true, 2292 | "optional": true 2293 | }, 2294 | "@esbuild/linux-riscv64": { 2295 | "version": "0.16.17", 2296 | "resolved": "https://registry.npmmirror.com/@esbuild/linux-riscv64/-/linux-riscv64-0.16.17.tgz", 2297 | "integrity": "sha512-ylNlVsxuFjZK8DQtNUwiMskh6nT0vI7kYl/4fZgV1llP5d6+HIeL/vmmm3jpuoo8+NuXjQVZxmKuhDApK0/cKw==", 2298 | "dev": true, 2299 | "optional": true 2300 | }, 2301 | "@esbuild/linux-s390x": { 2302 | "version": "0.16.17", 2303 | "resolved": "https://registry.npmmirror.com/@esbuild/linux-s390x/-/linux-s390x-0.16.17.tgz", 2304 | "integrity": "sha512-gzy7nUTO4UA4oZ2wAMXPNBGTzZFP7mss3aKR2hH+/4UUkCOyqmjXiKpzGrY2TlEUhbbejzXVKKGazYcQTZWA/w==", 2305 | "dev": true, 2306 | "optional": true 2307 | }, 2308 | "@esbuild/linux-x64": { 2309 | "version": "0.16.17", 2310 | "resolved": "https://registry.npmmirror.com/@esbuild/linux-x64/-/linux-x64-0.16.17.tgz", 2311 | "integrity": "sha512-mdPjPxfnmoqhgpiEArqi4egmBAMYvaObgn4poorpUaqmvzzbvqbowRllQ+ZgzGVMGKaPkqUmPDOOFQRUFDmeUw==", 2312 | "dev": true, 2313 | "optional": true 2314 | }, 2315 | "@esbuild/netbsd-x64": { 2316 | "version": "0.16.17", 2317 | "resolved": "https://registry.npmmirror.com/@esbuild/netbsd-x64/-/netbsd-x64-0.16.17.tgz", 2318 | "integrity": "sha512-/PzmzD/zyAeTUsduZa32bn0ORug+Jd1EGGAUJvqfeixoEISYpGnAezN6lnJoskauoai0Jrs+XSyvDhppCPoKOA==", 2319 | "dev": true, 2320 | "optional": true 2321 | }, 2322 | "@esbuild/openbsd-x64": { 2323 | "version": "0.16.17", 2324 | "resolved": "https://registry.npmmirror.com/@esbuild/openbsd-x64/-/openbsd-x64-0.16.17.tgz", 2325 | "integrity": "sha512-2yaWJhvxGEz2RiftSk0UObqJa/b+rIAjnODJgv2GbGGpRwAfpgzyrg1WLK8rqA24mfZa9GvpjLcBBg8JHkoodg==", 2326 | "dev": true, 2327 | "optional": true 2328 | }, 2329 | "@esbuild/sunos-x64": { 2330 | "version": "0.16.17", 2331 | "resolved": "https://registry.npmmirror.com/@esbuild/sunos-x64/-/sunos-x64-0.16.17.tgz", 2332 | "integrity": "sha512-xtVUiev38tN0R3g8VhRfN7Zl42YCJvyBhRKw1RJjwE1d2emWTVToPLNEQj/5Qxc6lVFATDiy6LjVHYhIPrLxzw==", 2333 | "dev": true, 2334 | "optional": true 2335 | }, 2336 | "@esbuild/win32-arm64": { 2337 | "version": "0.16.17", 2338 | "resolved": "https://registry.npmmirror.com/@esbuild/win32-arm64/-/win32-arm64-0.16.17.tgz", 2339 | "integrity": "sha512-ga8+JqBDHY4b6fQAmOgtJJue36scANy4l/rL97W+0wYmijhxKetzZdKOJI7olaBaMhWt8Pac2McJdZLxXWUEQw==", 2340 | "dev": true, 2341 | "optional": true 2342 | }, 2343 | "@esbuild/win32-ia32": { 2344 | "version": "0.16.17", 2345 | "resolved": "https://registry.npmmirror.com/@esbuild/win32-ia32/-/win32-ia32-0.16.17.tgz", 2346 | "integrity": "sha512-WnsKaf46uSSF/sZhwnqE4L/F89AYNMiD4YtEcYekBt9Q7nj0DiId2XH2Ng2PHM54qi5oPrQ8luuzGszqi/veig==", 2347 | "dev": true, 2348 | "optional": true 2349 | }, 2350 | "@esbuild/win32-x64": { 2351 | "version": "0.16.17", 2352 | "resolved": "https://registry.npmmirror.com/@esbuild/win32-x64/-/win32-x64-0.16.17.tgz", 2353 | "integrity": "sha512-y+EHuSchhL7FjHgvQL/0fnnFmO4T1bhvWANX6gcnqTjtnKWbTvUMCpGnv2+t+31d7RzyEAYAd4u2fnIhHL6N/Q==", 2354 | "dev": true, 2355 | "optional": true 2356 | }, 2357 | "@eslint/eslintrc": { 2358 | "version": "1.4.1", 2359 | "resolved": "https://registry.npmmirror.com/@eslint/eslintrc/-/eslintrc-1.4.1.tgz", 2360 | "integrity": "sha512-XXrH9Uarn0stsyldqDYq8r++mROmWRI1xKMXa640Bb//SY1+ECYX6VzT6Lcx5frD0V30XieqJ0oX9I2Xj5aoMA==", 2361 | "dev": true, 2362 | "requires": { 2363 | "ajv": "^6.12.4", 2364 | "debug": "^4.3.2", 2365 | "espree": "^9.4.0", 2366 | "globals": "^13.19.0", 2367 | "ignore": "^5.2.0", 2368 | "import-fresh": "^3.2.1", 2369 | "js-yaml": "^4.1.0", 2370 | "minimatch": "^3.1.2", 2371 | "strip-json-comments": "^3.1.1" 2372 | } 2373 | }, 2374 | "@humanwhocodes/config-array": { 2375 | "version": "0.11.8", 2376 | "resolved": "https://registry.npmmirror.com/@humanwhocodes/config-array/-/config-array-0.11.8.tgz", 2377 | "integrity": "sha512-UybHIJzJnR5Qc/MsD9Kr+RpO2h+/P1GhOwdiLPXK5TWk5sgTdu88bTD9UP+CKbPPh5Rni1u0GjAdYQLemG8g+g==", 2378 | "dev": true, 2379 | "requires": { 2380 | "@humanwhocodes/object-schema": "^1.2.1", 2381 | "debug": "^4.1.1", 2382 | "minimatch": "^3.0.5" 2383 | } 2384 | }, 2385 | "@humanwhocodes/module-importer": { 2386 | "version": "1.0.1", 2387 | "resolved": "https://registry.npmmirror.com/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", 2388 | "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==", 2389 | "dev": true 2390 | }, 2391 | "@humanwhocodes/object-schema": { 2392 | "version": "1.2.1", 2393 | "resolved": "https://registry.npmmirror.com/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz", 2394 | "integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==", 2395 | "dev": true 2396 | }, 2397 | "@nodelib/fs.scandir": { 2398 | "version": "2.1.5", 2399 | "resolved": "https://registry.npmmirror.com/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", 2400 | "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", 2401 | "dev": true, 2402 | "requires": { 2403 | "@nodelib/fs.stat": "2.0.5", 2404 | "run-parallel": "^1.1.9" 2405 | } 2406 | }, 2407 | "@nodelib/fs.stat": { 2408 | "version": "2.0.5", 2409 | "resolved": "https://registry.npmmirror.com/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", 2410 | "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", 2411 | "dev": true 2412 | }, 2413 | "@nodelib/fs.walk": { 2414 | "version": "1.2.8", 2415 | "resolved": "https://registry.npmmirror.com/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", 2416 | "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", 2417 | "dev": true, 2418 | "requires": { 2419 | "@nodelib/fs.scandir": "2.1.5", 2420 | "fastq": "^1.6.0" 2421 | } 2422 | }, 2423 | "@popperjs/core": { 2424 | "version": "2.11.6", 2425 | "resolved": "https://registry.npmmirror.com/@popperjs/core/-/core-2.11.6.tgz", 2426 | "integrity": "sha512-50/17A98tWUfQ176raKiOGXuYpLyyVMkxxG6oylzL3BPOlA6ADGdK7EYunSa4I064xerltq9TGXs8HmOk5E+vw==", 2427 | "peer": true 2428 | }, 2429 | "@vitejs/plugin-vue": { 2430 | "version": "4.0.0", 2431 | "resolved": "https://registry.npmmirror.com/@vitejs/plugin-vue/-/plugin-vue-4.0.0.tgz", 2432 | "integrity": "sha512-e0X4jErIxAB5oLtDqbHvHpJe/uWNkdpYV83AOG2xo2tEVSzCzewgJMtREZM30wXnM5ls90hxiOtAuVU6H5JgbA==", 2433 | "dev": true, 2434 | "requires": {} 2435 | }, 2436 | "@vue/compiler-core": { 2437 | "version": "3.2.45", 2438 | "resolved": "https://registry.npmmirror.com/@vue/compiler-core/-/compiler-core-3.2.45.tgz", 2439 | "integrity": "sha512-rcMj7H+PYe5wBV3iYeUgbCglC+pbpN8hBLTJvRiK2eKQiWqu+fG9F+8sW99JdL4LQi7Re178UOxn09puSXvn4A==", 2440 | "requires": { 2441 | "@babel/parser": "^7.16.4", 2442 | "@vue/shared": "3.2.45", 2443 | "estree-walker": "^2.0.2", 2444 | "source-map": "^0.6.1" 2445 | } 2446 | }, 2447 | "@vue/compiler-dom": { 2448 | "version": "3.2.45", 2449 | "resolved": "https://registry.npmmirror.com/@vue/compiler-dom/-/compiler-dom-3.2.45.tgz", 2450 | "integrity": "sha512-tyYeUEuKqqZO137WrZkpwfPCdiiIeXYCcJ8L4gWz9vqaxzIQRccTSwSWZ/Axx5YR2z+LvpUbmPNXxuBU45lyRw==", 2451 | "requires": { 2452 | "@vue/compiler-core": "3.2.45", 2453 | "@vue/shared": "3.2.45" 2454 | } 2455 | }, 2456 | "@vue/compiler-sfc": { 2457 | "version": "3.2.45", 2458 | "resolved": "https://registry.npmmirror.com/@vue/compiler-sfc/-/compiler-sfc-3.2.45.tgz", 2459 | "integrity": "sha512-1jXDuWah1ggsnSAOGsec8cFjT/K6TMZ0sPL3o3d84Ft2AYZi2jWJgRMjw4iaK0rBfA89L5gw427H4n1RZQBu6Q==", 2460 | "requires": { 2461 | "@babel/parser": "^7.16.4", 2462 | "@vue/compiler-core": "3.2.45", 2463 | "@vue/compiler-dom": "3.2.45", 2464 | "@vue/compiler-ssr": "3.2.45", 2465 | "@vue/reactivity-transform": "3.2.45", 2466 | "@vue/shared": "3.2.45", 2467 | "estree-walker": "^2.0.2", 2468 | "magic-string": "^0.25.7", 2469 | "postcss": "^8.1.10", 2470 | "source-map": "^0.6.1" 2471 | } 2472 | }, 2473 | "@vue/compiler-ssr": { 2474 | "version": "3.2.45", 2475 | "resolved": "https://registry.npmmirror.com/@vue/compiler-ssr/-/compiler-ssr-3.2.45.tgz", 2476 | "integrity": "sha512-6BRaggEGqhWht3lt24CrIbQSRD5O07MTmd+LjAn5fJj568+R9eUD2F7wMQJjX859seSlrYog7sUtrZSd7feqrQ==", 2477 | "requires": { 2478 | "@vue/compiler-dom": "3.2.45", 2479 | "@vue/shared": "3.2.45" 2480 | } 2481 | }, 2482 | "@vue/devtools-api": { 2483 | "version": "6.4.5", 2484 | "resolved": "https://registry.npmmirror.com/@vue/devtools-api/-/devtools-api-6.4.5.tgz", 2485 | "integrity": "sha512-JD5fcdIuFxU4fQyXUu3w2KpAJHzTVdN+p4iOX2lMWSHMOoQdMAcpFLZzm9Z/2nmsoZ1a96QEhZ26e50xLBsgOQ==" 2486 | }, 2487 | "@vue/reactivity": { 2488 | "version": "3.2.45", 2489 | "resolved": "https://registry.npmmirror.com/@vue/reactivity/-/reactivity-3.2.45.tgz", 2490 | "integrity": "sha512-PRvhCcQcyEVohW0P8iQ7HDcIOXRjZfAsOds3N99X/Dzewy8TVhTCT4uXpAHfoKjVTJRA0O0K+6QNkDIZAxNi3A==", 2491 | "requires": { 2492 | "@vue/shared": "3.2.45" 2493 | } 2494 | }, 2495 | "@vue/reactivity-transform": { 2496 | "version": "3.2.45", 2497 | "resolved": "https://registry.npmmirror.com/@vue/reactivity-transform/-/reactivity-transform-3.2.45.tgz", 2498 | "integrity": "sha512-BHVmzYAvM7vcU5WmuYqXpwaBHjsS8T63jlKGWVtHxAHIoMIlmaMyurUSEs1Zcg46M4AYT5MtB1U274/2aNzjJQ==", 2499 | "requires": { 2500 | "@babel/parser": "^7.16.4", 2501 | "@vue/compiler-core": "3.2.45", 2502 | "@vue/shared": "3.2.45", 2503 | "estree-walker": "^2.0.2", 2504 | "magic-string": "^0.25.7" 2505 | } 2506 | }, 2507 | "@vue/runtime-core": { 2508 | "version": "3.2.45", 2509 | "resolved": "https://registry.npmmirror.com/@vue/runtime-core/-/runtime-core-3.2.45.tgz", 2510 | "integrity": "sha512-gzJiTA3f74cgARptqzYswmoQx0fIA+gGYBfokYVhF8YSXjWTUA2SngRzZRku2HbGbjzB6LBYSbKGIaK8IW+s0A==", 2511 | "requires": { 2512 | "@vue/reactivity": "3.2.45", 2513 | "@vue/shared": "3.2.45" 2514 | } 2515 | }, 2516 | "@vue/runtime-dom": { 2517 | "version": "3.2.45", 2518 | "resolved": "https://registry.npmmirror.com/@vue/runtime-dom/-/runtime-dom-3.2.45.tgz", 2519 | "integrity": "sha512-cy88YpfP5Ue2bDBbj75Cb4bIEZUMM/mAkDMfqDTpUYVgTf/kuQ2VQ8LebuZ8k6EudgH8pYhsGWHlY0lcxlvTwA==", 2520 | "requires": { 2521 | "@vue/runtime-core": "3.2.45", 2522 | "@vue/shared": "3.2.45", 2523 | "csstype": "^2.6.8" 2524 | } 2525 | }, 2526 | "@vue/server-renderer": { 2527 | "version": "3.2.45", 2528 | "resolved": "https://registry.npmmirror.com/@vue/server-renderer/-/server-renderer-3.2.45.tgz", 2529 | "integrity": "sha512-ebiMq7q24WBU1D6uhPK//2OTR1iRIyxjF5iVq/1a5I1SDMDyDu4Ts6fJaMnjrvD3MqnaiFkKQj+LKAgz5WIK3g==", 2530 | "requires": { 2531 | "@vue/compiler-ssr": "3.2.45", 2532 | "@vue/shared": "3.2.45" 2533 | } 2534 | }, 2535 | "@vue/shared": { 2536 | "version": "3.2.45", 2537 | "resolved": "https://registry.npmmirror.com/@vue/shared/-/shared-3.2.45.tgz", 2538 | "integrity": "sha512-Ewzq5Yhimg7pSztDV+RH1UDKBzmtqieXQlpTVm2AwraoRL/Rks96mvd8Vgi7Lj+h+TH8dv7mXD3FRZR3TUvbSg==" 2539 | }, 2540 | "acorn": { 2541 | "version": "8.8.1", 2542 | "resolved": "https://registry.npmmirror.com/acorn/-/acorn-8.8.1.tgz", 2543 | "integrity": "sha512-7zFpHzhnqYKrkYdUjF1HI1bzd0VygEGX8lFk4k5zVMqHEoES+P+7TKI+EvLO9WVMJ8eekdO0aDEK044xTXwPPA==", 2544 | "dev": true 2545 | }, 2546 | "acorn-jsx": { 2547 | "version": "5.3.2", 2548 | "resolved": "https://registry.npmmirror.com/acorn-jsx/-/acorn-jsx-5.3.2.tgz", 2549 | "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", 2550 | "dev": true, 2551 | "requires": {} 2552 | }, 2553 | "ajv": { 2554 | "version": "6.12.6", 2555 | "resolved": "https://registry.npmmirror.com/ajv/-/ajv-6.12.6.tgz", 2556 | "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", 2557 | "dev": true, 2558 | "requires": { 2559 | "fast-deep-equal": "^3.1.1", 2560 | "fast-json-stable-stringify": "^2.0.0", 2561 | "json-schema-traverse": "^0.4.1", 2562 | "uri-js": "^4.2.2" 2563 | } 2564 | }, 2565 | "ansi-regex": { 2566 | "version": "5.0.1", 2567 | "resolved": "https://registry.npmmirror.com/ansi-regex/-/ansi-regex-5.0.1.tgz", 2568 | "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", 2569 | "dev": true 2570 | }, 2571 | "ansi-styles": { 2572 | "version": "4.3.0", 2573 | "resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-4.3.0.tgz", 2574 | "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", 2575 | "dev": true, 2576 | "requires": { 2577 | "color-convert": "^2.0.1" 2578 | } 2579 | }, 2580 | "argparse": { 2581 | "version": "2.0.1", 2582 | "resolved": "https://registry.npmmirror.com/argparse/-/argparse-2.0.1.tgz", 2583 | "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", 2584 | "dev": true 2585 | }, 2586 | "asynckit": { 2587 | "version": "0.4.0", 2588 | "resolved": "https://registry.npmmirror.com/asynckit/-/asynckit-0.4.0.tgz", 2589 | "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==" 2590 | }, 2591 | "axios": { 2592 | "version": "1.2.2", 2593 | "resolved": "https://registry.npmmirror.com/axios/-/axios-1.2.2.tgz", 2594 | "integrity": "sha512-bz/J4gS2S3I7mpN/YZfGFTqhXTYzRho8Ay38w2otuuDR322KzFIWm/4W2K6gIwvWaws5n+mnb7D1lN9uD+QH6Q==", 2595 | "requires": { 2596 | "follow-redirects": "^1.15.0", 2597 | "form-data": "^4.0.0", 2598 | "proxy-from-env": "^1.1.0" 2599 | } 2600 | }, 2601 | "balanced-match": { 2602 | "version": "1.0.2", 2603 | "resolved": "https://registry.npmmirror.com/balanced-match/-/balanced-match-1.0.2.tgz", 2604 | "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", 2605 | "dev": true 2606 | }, 2607 | "boolbase": { 2608 | "version": "1.0.0", 2609 | "resolved": "https://registry.npmmirror.com/boolbase/-/boolbase-1.0.0.tgz", 2610 | "integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==", 2611 | "dev": true 2612 | }, 2613 | "bootstrap": { 2614 | "version": "5.2.3", 2615 | "resolved": "https://registry.npmmirror.com/bootstrap/-/bootstrap-5.2.3.tgz", 2616 | "integrity": "sha512-cEKPM+fwb3cT8NzQZYEu4HilJ3anCrWqh3CHAok1p9jXqMPsPTBhU25fBckEJHJ/p+tTxTFTsFQGM+gaHpi3QQ==", 2617 | "requires": {} 2618 | }, 2619 | "brace-expansion": { 2620 | "version": "1.1.11", 2621 | "resolved": "https://registry.npmmirror.com/brace-expansion/-/brace-expansion-1.1.11.tgz", 2622 | "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", 2623 | "dev": true, 2624 | "requires": { 2625 | "balanced-match": "^1.0.0", 2626 | "concat-map": "0.0.1" 2627 | } 2628 | }, 2629 | "callsites": { 2630 | "version": "3.1.0", 2631 | "resolved": "https://registry.npmmirror.com/callsites/-/callsites-3.1.0.tgz", 2632 | "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", 2633 | "dev": true 2634 | }, 2635 | "chalk": { 2636 | "version": "4.1.2", 2637 | "resolved": "https://registry.npmmirror.com/chalk/-/chalk-4.1.2.tgz", 2638 | "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", 2639 | "dev": true, 2640 | "requires": { 2641 | "ansi-styles": "^4.1.0", 2642 | "supports-color": "^7.1.0" 2643 | } 2644 | }, 2645 | "color-convert": { 2646 | "version": "2.0.1", 2647 | "resolved": "https://registry.npmmirror.com/color-convert/-/color-convert-2.0.1.tgz", 2648 | "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", 2649 | "dev": true, 2650 | "requires": { 2651 | "color-name": "~1.1.4" 2652 | } 2653 | }, 2654 | "color-name": { 2655 | "version": "1.1.4", 2656 | "resolved": "https://registry.npmmirror.com/color-name/-/color-name-1.1.4.tgz", 2657 | "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", 2658 | "dev": true 2659 | }, 2660 | "combined-stream": { 2661 | "version": "1.0.8", 2662 | "resolved": "https://registry.npmmirror.com/combined-stream/-/combined-stream-1.0.8.tgz", 2663 | "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", 2664 | "requires": { 2665 | "delayed-stream": "~1.0.0" 2666 | } 2667 | }, 2668 | "concat-map": { 2669 | "version": "0.0.1", 2670 | "resolved": "https://registry.npmmirror.com/concat-map/-/concat-map-0.0.1.tgz", 2671 | "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", 2672 | "dev": true 2673 | }, 2674 | "copy-anything": { 2675 | "version": "2.0.6", 2676 | "resolved": "https://registry.npmmirror.com/copy-anything/-/copy-anything-2.0.6.tgz", 2677 | "integrity": "sha512-1j20GZTsvKNkc4BY3NpMOM8tt///wY3FpIzozTOFO2ffuZcV61nojHXVKIy3WM+7ADCy5FVhdZYHYDdgTU0yJw==", 2678 | "requires": { 2679 | "is-what": "^3.14.1" 2680 | } 2681 | }, 2682 | "cross-spawn": { 2683 | "version": "7.0.3", 2684 | "resolved": "https://registry.npmmirror.com/cross-spawn/-/cross-spawn-7.0.3.tgz", 2685 | "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", 2686 | "dev": true, 2687 | "requires": { 2688 | "path-key": "^3.1.0", 2689 | "shebang-command": "^2.0.0", 2690 | "which": "^2.0.1" 2691 | } 2692 | }, 2693 | "cssesc": { 2694 | "version": "3.0.0", 2695 | "resolved": "https://registry.npmmirror.com/cssesc/-/cssesc-3.0.0.tgz", 2696 | "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", 2697 | "dev": true 2698 | }, 2699 | "csstype": { 2700 | "version": "2.6.21", 2701 | "resolved": "https://registry.npmmirror.com/csstype/-/csstype-2.6.21.tgz", 2702 | "integrity": "sha512-Z1PhmomIfypOpoMjRQB70jfvy/wxT50qW08YXO5lMIJkrdq4yOTR+AW7FqutScmB9NkLwxo+jU+kZLbofZZq/w==" 2703 | }, 2704 | "debug": { 2705 | "version": "4.3.4", 2706 | "resolved": "https://registry.npmmirror.com/debug/-/debug-4.3.4.tgz", 2707 | "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", 2708 | "dev": true, 2709 | "requires": { 2710 | "ms": "2.1.2" 2711 | } 2712 | }, 2713 | "deep-is": { 2714 | "version": "0.1.4", 2715 | "resolved": "https://registry.npmmirror.com/deep-is/-/deep-is-0.1.4.tgz", 2716 | "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", 2717 | "dev": true 2718 | }, 2719 | "delayed-stream": { 2720 | "version": "1.0.0", 2721 | "resolved": "https://registry.npmmirror.com/delayed-stream/-/delayed-stream-1.0.0.tgz", 2722 | "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==" 2723 | }, 2724 | "doctrine": { 2725 | "version": "3.0.0", 2726 | "resolved": "https://registry.npmmirror.com/doctrine/-/doctrine-3.0.0.tgz", 2727 | "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", 2728 | "dev": true, 2729 | "requires": { 2730 | "esutils": "^2.0.2" 2731 | } 2732 | }, 2733 | "errno": { 2734 | "version": "0.1.8", 2735 | "resolved": "https://registry.npmmirror.com/errno/-/errno-0.1.8.tgz", 2736 | "integrity": "sha512-dJ6oBr5SQ1VSd9qkk7ByRgb/1SH4JZjCHSW/mr63/QcXO9zLVxvJ6Oy13nio03rxpSnVDDjFor75SjVeZWPW/A==", 2737 | "optional": true, 2738 | "requires": { 2739 | "prr": "~1.0.1" 2740 | } 2741 | }, 2742 | "esbuild": { 2743 | "version": "0.16.17", 2744 | "resolved": "https://registry.npmmirror.com/esbuild/-/esbuild-0.16.17.tgz", 2745 | "integrity": "sha512-G8LEkV0XzDMNwXKgM0Jwu3nY3lSTwSGY6XbxM9cr9+s0T/qSV1q1JVPBGzm3dcjhCic9+emZDmMffkwgPeOeLg==", 2746 | "dev": true, 2747 | "requires": { 2748 | "@esbuild/android-arm": "0.16.17", 2749 | "@esbuild/android-arm64": "0.16.17", 2750 | "@esbuild/android-x64": "0.16.17", 2751 | "@esbuild/darwin-arm64": "0.16.17", 2752 | "@esbuild/darwin-x64": "0.16.17", 2753 | "@esbuild/freebsd-arm64": "0.16.17", 2754 | "@esbuild/freebsd-x64": "0.16.17", 2755 | "@esbuild/linux-arm": "0.16.17", 2756 | "@esbuild/linux-arm64": "0.16.17", 2757 | "@esbuild/linux-ia32": "0.16.17", 2758 | "@esbuild/linux-loong64": "0.16.17", 2759 | "@esbuild/linux-mips64el": "0.16.17", 2760 | "@esbuild/linux-ppc64": "0.16.17", 2761 | "@esbuild/linux-riscv64": "0.16.17", 2762 | "@esbuild/linux-s390x": "0.16.17", 2763 | "@esbuild/linux-x64": "0.16.17", 2764 | "@esbuild/netbsd-x64": "0.16.17", 2765 | "@esbuild/openbsd-x64": "0.16.17", 2766 | "@esbuild/sunos-x64": "0.16.17", 2767 | "@esbuild/win32-arm64": "0.16.17", 2768 | "@esbuild/win32-ia32": "0.16.17", 2769 | "@esbuild/win32-x64": "0.16.17" 2770 | } 2771 | }, 2772 | "escape-string-regexp": { 2773 | "version": "4.0.0", 2774 | "resolved": "https://registry.npmmirror.com/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", 2775 | "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", 2776 | "dev": true 2777 | }, 2778 | "eslint": { 2779 | "version": "8.32.0", 2780 | "resolved": "https://registry.npmmirror.com/eslint/-/eslint-8.32.0.tgz", 2781 | "integrity": "sha512-nETVXpnthqKPFyuY2FNjz/bEd6nbosRgKbkgS/y1C7LJop96gYHWpiguLecMHQ2XCPxn77DS0P+68WzG6vkZSQ==", 2782 | "dev": true, 2783 | "requires": { 2784 | "@eslint/eslintrc": "^1.4.1", 2785 | "@humanwhocodes/config-array": "^0.11.8", 2786 | "@humanwhocodes/module-importer": "^1.0.1", 2787 | "@nodelib/fs.walk": "^1.2.8", 2788 | "ajv": "^6.10.0", 2789 | "chalk": "^4.0.0", 2790 | "cross-spawn": "^7.0.2", 2791 | "debug": "^4.3.2", 2792 | "doctrine": "^3.0.0", 2793 | "escape-string-regexp": "^4.0.0", 2794 | "eslint-scope": "^7.1.1", 2795 | "eslint-utils": "^3.0.0", 2796 | "eslint-visitor-keys": "^3.3.0", 2797 | "espree": "^9.4.0", 2798 | "esquery": "^1.4.0", 2799 | "esutils": "^2.0.2", 2800 | "fast-deep-equal": "^3.1.3", 2801 | "file-entry-cache": "^6.0.1", 2802 | "find-up": "^5.0.0", 2803 | "glob-parent": "^6.0.2", 2804 | "globals": "^13.19.0", 2805 | "grapheme-splitter": "^1.0.4", 2806 | "ignore": "^5.2.0", 2807 | "import-fresh": "^3.0.0", 2808 | "imurmurhash": "^0.1.4", 2809 | "is-glob": "^4.0.0", 2810 | "is-path-inside": "^3.0.3", 2811 | "js-sdsl": "^4.1.4", 2812 | "js-yaml": "^4.1.0", 2813 | "json-stable-stringify-without-jsonify": "^1.0.1", 2814 | "levn": "^0.4.1", 2815 | "lodash.merge": "^4.6.2", 2816 | "minimatch": "^3.1.2", 2817 | "natural-compare": "^1.4.0", 2818 | "optionator": "^0.9.1", 2819 | "regexpp": "^3.2.0", 2820 | "strip-ansi": "^6.0.1", 2821 | "strip-json-comments": "^3.1.0", 2822 | "text-table": "^0.2.0" 2823 | } 2824 | }, 2825 | "eslint-plugin-vue": { 2826 | "version": "9.9.0", 2827 | "resolved": "https://registry.npmmirror.com/eslint-plugin-vue/-/eslint-plugin-vue-9.9.0.tgz", 2828 | "integrity": "sha512-YbubS7eK0J7DCf0U2LxvVP7LMfs6rC6UltihIgval3azO3gyDwEGVgsCMe1TmDiEkl6GdMKfRpaME6QxIYtzDQ==", 2829 | "dev": true, 2830 | "requires": { 2831 | "eslint-utils": "^3.0.0", 2832 | "natural-compare": "^1.4.0", 2833 | "nth-check": "^2.0.1", 2834 | "postcss-selector-parser": "^6.0.9", 2835 | "semver": "^7.3.5", 2836 | "vue-eslint-parser": "^9.0.1", 2837 | "xml-name-validator": "^4.0.0" 2838 | } 2839 | }, 2840 | "eslint-scope": { 2841 | "version": "7.1.1", 2842 | "resolved": "https://registry.npmmirror.com/eslint-scope/-/eslint-scope-7.1.1.tgz", 2843 | "integrity": "sha512-QKQM/UXpIiHcLqJ5AOyIW7XZmzjkzQXYE54n1++wb0u9V/abW3l9uQnxX8Z5Xd18xyKIMTUAyQ0k1e8pz6LUrw==", 2844 | "dev": true, 2845 | "requires": { 2846 | "esrecurse": "^4.3.0", 2847 | "estraverse": "^5.2.0" 2848 | } 2849 | }, 2850 | "eslint-utils": { 2851 | "version": "3.0.0", 2852 | "resolved": "https://registry.npmmirror.com/eslint-utils/-/eslint-utils-3.0.0.tgz", 2853 | "integrity": "sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA==", 2854 | "dev": true, 2855 | "requires": { 2856 | "eslint-visitor-keys": "^2.0.0" 2857 | }, 2858 | "dependencies": { 2859 | "eslint-visitor-keys": { 2860 | "version": "2.1.0", 2861 | "resolved": "https://registry.npmmirror.com/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", 2862 | "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", 2863 | "dev": true 2864 | } 2865 | } 2866 | }, 2867 | "eslint-visitor-keys": { 2868 | "version": "3.3.0", 2869 | "resolved": "https://registry.npmmirror.com/eslint-visitor-keys/-/eslint-visitor-keys-3.3.0.tgz", 2870 | "integrity": "sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA==", 2871 | "dev": true 2872 | }, 2873 | "espree": { 2874 | "version": "9.4.1", 2875 | "resolved": "https://registry.npmmirror.com/espree/-/espree-9.4.1.tgz", 2876 | "integrity": "sha512-XwctdmTO6SIvCzd9810yyNzIrOrqNYV9Koizx4C/mRhf9uq0o4yHoCEU/670pOxOL/MSraektvSAji79kX90Vg==", 2877 | "dev": true, 2878 | "requires": { 2879 | "acorn": "^8.8.0", 2880 | "acorn-jsx": "^5.3.2", 2881 | "eslint-visitor-keys": "^3.3.0" 2882 | } 2883 | }, 2884 | "esquery": { 2885 | "version": "1.4.0", 2886 | "resolved": "https://registry.npmmirror.com/esquery/-/esquery-1.4.0.tgz", 2887 | "integrity": "sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==", 2888 | "dev": true, 2889 | "requires": { 2890 | "estraverse": "^5.1.0" 2891 | } 2892 | }, 2893 | "esrecurse": { 2894 | "version": "4.3.0", 2895 | "resolved": "https://registry.npmmirror.com/esrecurse/-/esrecurse-4.3.0.tgz", 2896 | "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", 2897 | "dev": true, 2898 | "requires": { 2899 | "estraverse": "^5.2.0" 2900 | } 2901 | }, 2902 | "estraverse": { 2903 | "version": "5.3.0", 2904 | "resolved": "https://registry.npmmirror.com/estraverse/-/estraverse-5.3.0.tgz", 2905 | "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", 2906 | "dev": true 2907 | }, 2908 | "estree-walker": { 2909 | "version": "2.0.2", 2910 | "resolved": "https://registry.npmmirror.com/estree-walker/-/estree-walker-2.0.2.tgz", 2911 | "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==" 2912 | }, 2913 | "esutils": { 2914 | "version": "2.0.3", 2915 | "resolved": "https://registry.npmmirror.com/esutils/-/esutils-2.0.3.tgz", 2916 | "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", 2917 | "dev": true 2918 | }, 2919 | "fast-deep-equal": { 2920 | "version": "3.1.3", 2921 | "resolved": "https://registry.npmmirror.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", 2922 | "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", 2923 | "dev": true 2924 | }, 2925 | "fast-json-stable-stringify": { 2926 | "version": "2.1.0", 2927 | "resolved": "https://registry.npmmirror.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", 2928 | "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", 2929 | "dev": true 2930 | }, 2931 | "fast-levenshtein": { 2932 | "version": "2.0.6", 2933 | "resolved": "https://registry.npmmirror.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", 2934 | "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", 2935 | "dev": true 2936 | }, 2937 | "fastq": { 2938 | "version": "1.15.0", 2939 | "resolved": "https://registry.npmmirror.com/fastq/-/fastq-1.15.0.tgz", 2940 | "integrity": "sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==", 2941 | "dev": true, 2942 | "requires": { 2943 | "reusify": "^1.0.4" 2944 | } 2945 | }, 2946 | "file-entry-cache": { 2947 | "version": "6.0.1", 2948 | "resolved": "https://registry.npmmirror.com/file-entry-cache/-/file-entry-cache-6.0.1.tgz", 2949 | "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", 2950 | "dev": true, 2951 | "requires": { 2952 | "flat-cache": "^3.0.4" 2953 | } 2954 | }, 2955 | "find-up": { 2956 | "version": "5.0.0", 2957 | "resolved": "https://registry.npmmirror.com/find-up/-/find-up-5.0.0.tgz", 2958 | "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", 2959 | "dev": true, 2960 | "requires": { 2961 | "locate-path": "^6.0.0", 2962 | "path-exists": "^4.0.0" 2963 | } 2964 | }, 2965 | "flat-cache": { 2966 | "version": "3.0.4", 2967 | "resolved": "https://registry.npmmirror.com/flat-cache/-/flat-cache-3.0.4.tgz", 2968 | "integrity": "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==", 2969 | "dev": true, 2970 | "requires": { 2971 | "flatted": "^3.1.0", 2972 | "rimraf": "^3.0.2" 2973 | } 2974 | }, 2975 | "flatted": { 2976 | "version": "3.2.7", 2977 | "resolved": "https://registry.npmmirror.com/flatted/-/flatted-3.2.7.tgz", 2978 | "integrity": "sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ==", 2979 | "dev": true 2980 | }, 2981 | "follow-redirects": { 2982 | "version": "1.15.2", 2983 | "resolved": "https://registry.npmmirror.com/follow-redirects/-/follow-redirects-1.15.2.tgz", 2984 | "integrity": "sha512-VQLG33o04KaQ8uYi2tVNbdrWp1QWxNNea+nmIB4EVM28v0hmP17z7aG1+wAkNzVq4KeXTq3221ye5qTJP91JwA==" 2985 | }, 2986 | "form-data": { 2987 | "version": "4.0.0", 2988 | "resolved": "https://registry.npmmirror.com/form-data/-/form-data-4.0.0.tgz", 2989 | "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==", 2990 | "requires": { 2991 | "asynckit": "^0.4.0", 2992 | "combined-stream": "^1.0.8", 2993 | "mime-types": "^2.1.12" 2994 | } 2995 | }, 2996 | "fs.realpath": { 2997 | "version": "1.0.0", 2998 | "resolved": "https://registry.npmmirror.com/fs.realpath/-/fs.realpath-1.0.0.tgz", 2999 | "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", 3000 | "dev": true 3001 | }, 3002 | "fsevents": { 3003 | "version": "2.3.2", 3004 | "resolved": "https://registry.npmmirror.com/fsevents/-/fsevents-2.3.2.tgz", 3005 | "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", 3006 | "dev": true, 3007 | "optional": true 3008 | }, 3009 | "function-bind": { 3010 | "version": "1.1.1", 3011 | "resolved": "https://registry.npmmirror.com/function-bind/-/function-bind-1.1.1.tgz", 3012 | "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", 3013 | "dev": true 3014 | }, 3015 | "glob": { 3016 | "version": "7.2.3", 3017 | "resolved": "https://registry.npmmirror.com/glob/-/glob-7.2.3.tgz", 3018 | "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", 3019 | "dev": true, 3020 | "requires": { 3021 | "fs.realpath": "^1.0.0", 3022 | "inflight": "^1.0.4", 3023 | "inherits": "2", 3024 | "minimatch": "^3.1.1", 3025 | "once": "^1.3.0", 3026 | "path-is-absolute": "^1.0.0" 3027 | } 3028 | }, 3029 | "glob-parent": { 3030 | "version": "6.0.2", 3031 | "resolved": "https://registry.npmmirror.com/glob-parent/-/glob-parent-6.0.2.tgz", 3032 | "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", 3033 | "dev": true, 3034 | "requires": { 3035 | "is-glob": "^4.0.3" 3036 | } 3037 | }, 3038 | "globals": { 3039 | "version": "13.19.0", 3040 | "resolved": "https://registry.npmmirror.com/globals/-/globals-13.19.0.tgz", 3041 | "integrity": "sha512-dkQ957uSRWHw7CFXLUtUHQI3g3aWApYhfNR2O6jn/907riyTYKVBmxYVROkBcY614FSSeSJh7Xm7SrUWCxvJMQ==", 3042 | "dev": true, 3043 | "requires": { 3044 | "type-fest": "^0.20.2" 3045 | } 3046 | }, 3047 | "graceful-fs": { 3048 | "version": "4.2.10", 3049 | "resolved": "https://registry.npmmirror.com/graceful-fs/-/graceful-fs-4.2.10.tgz", 3050 | "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==", 3051 | "optional": true 3052 | }, 3053 | "grapheme-splitter": { 3054 | "version": "1.0.4", 3055 | "resolved": "https://registry.npmmirror.com/grapheme-splitter/-/grapheme-splitter-1.0.4.tgz", 3056 | "integrity": "sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ==", 3057 | "dev": true 3058 | }, 3059 | "has": { 3060 | "version": "1.0.3", 3061 | "resolved": "https://registry.npmmirror.com/has/-/has-1.0.3.tgz", 3062 | "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", 3063 | "dev": true, 3064 | "requires": { 3065 | "function-bind": "^1.1.1" 3066 | } 3067 | }, 3068 | "has-flag": { 3069 | "version": "4.0.0", 3070 | "resolved": "https://registry.npmmirror.com/has-flag/-/has-flag-4.0.0.tgz", 3071 | "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", 3072 | "dev": true 3073 | }, 3074 | "iconv-lite": { 3075 | "version": "0.6.3", 3076 | "resolved": "https://registry.npmmirror.com/iconv-lite/-/iconv-lite-0.6.3.tgz", 3077 | "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", 3078 | "optional": true, 3079 | "requires": { 3080 | "safer-buffer": ">= 2.1.2 < 3.0.0" 3081 | } 3082 | }, 3083 | "ignore": { 3084 | "version": "5.2.4", 3085 | "resolved": "https://registry.npmmirror.com/ignore/-/ignore-5.2.4.tgz", 3086 | "integrity": "sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==", 3087 | "dev": true 3088 | }, 3089 | "image-size": { 3090 | "version": "0.5.5", 3091 | "resolved": "https://registry.npmmirror.com/image-size/-/image-size-0.5.5.tgz", 3092 | "integrity": "sha512-6TDAlDPZxUFCv+fuOkIoXT/V/f3Qbq8e37p+YOiYrUv3v9cc3/6x78VdfPgFVaB9dZYeLUfKgHRebpkm/oP2VQ==", 3093 | "optional": true 3094 | }, 3095 | "import-fresh": { 3096 | "version": "3.3.0", 3097 | "resolved": "https://registry.npmmirror.com/import-fresh/-/import-fresh-3.3.0.tgz", 3098 | "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", 3099 | "dev": true, 3100 | "requires": { 3101 | "parent-module": "^1.0.0", 3102 | "resolve-from": "^4.0.0" 3103 | } 3104 | }, 3105 | "imurmurhash": { 3106 | "version": "0.1.4", 3107 | "resolved": "https://registry.npmmirror.com/imurmurhash/-/imurmurhash-0.1.4.tgz", 3108 | "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", 3109 | "dev": true 3110 | }, 3111 | "inflight": { 3112 | "version": "1.0.6", 3113 | "resolved": "https://registry.npmmirror.com/inflight/-/inflight-1.0.6.tgz", 3114 | "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", 3115 | "dev": true, 3116 | "requires": { 3117 | "once": "^1.3.0", 3118 | "wrappy": "1" 3119 | } 3120 | }, 3121 | "inherits": { 3122 | "version": "2.0.4", 3123 | "resolved": "https://registry.npmmirror.com/inherits/-/inherits-2.0.4.tgz", 3124 | "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", 3125 | "dev": true 3126 | }, 3127 | "is-core-module": { 3128 | "version": "2.11.0", 3129 | "resolved": "https://registry.npmmirror.com/is-core-module/-/is-core-module-2.11.0.tgz", 3130 | "integrity": "sha512-RRjxlvLDkD1YJwDbroBHMb+cukurkDWNyHx7D3oNB5x9rb5ogcksMC5wHCadcXoo67gVr/+3GFySh3134zi6rw==", 3131 | "dev": true, 3132 | "requires": { 3133 | "has": "^1.0.3" 3134 | } 3135 | }, 3136 | "is-extglob": { 3137 | "version": "2.1.1", 3138 | "resolved": "https://registry.npmmirror.com/is-extglob/-/is-extglob-2.1.1.tgz", 3139 | "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", 3140 | "dev": true 3141 | }, 3142 | "is-glob": { 3143 | "version": "4.0.3", 3144 | "resolved": "https://registry.npmmirror.com/is-glob/-/is-glob-4.0.3.tgz", 3145 | "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", 3146 | "dev": true, 3147 | "requires": { 3148 | "is-extglob": "^2.1.1" 3149 | } 3150 | }, 3151 | "is-path-inside": { 3152 | "version": "3.0.3", 3153 | "resolved": "https://registry.npmmirror.com/is-path-inside/-/is-path-inside-3.0.3.tgz", 3154 | "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==", 3155 | "dev": true 3156 | }, 3157 | "is-what": { 3158 | "version": "3.14.1", 3159 | "resolved": "https://registry.npmmirror.com/is-what/-/is-what-3.14.1.tgz", 3160 | "integrity": "sha512-sNxgpk9793nzSs7bA6JQJGeIuRBQhAaNGG77kzYQgMkrID+lS6SlK07K5LaptscDlSaIgH+GPFzf+d75FVxozA==" 3161 | }, 3162 | "isexe": { 3163 | "version": "2.0.0", 3164 | "resolved": "https://registry.npmmirror.com/isexe/-/isexe-2.0.0.tgz", 3165 | "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", 3166 | "dev": true 3167 | }, 3168 | "js-sdsl": { 3169 | "version": "4.2.0", 3170 | "resolved": "https://registry.npmmirror.com/js-sdsl/-/js-sdsl-4.2.0.tgz", 3171 | "integrity": "sha512-dyBIzQBDkCqCu+0upx25Y2jGdbTGxE9fshMsCdK0ViOongpV+n5tXRcZY9v7CaVQ79AGS9KA1KHtojxiM7aXSQ==", 3172 | "dev": true 3173 | }, 3174 | "js-yaml": { 3175 | "version": "4.1.0", 3176 | "resolved": "https://registry.npmmirror.com/js-yaml/-/js-yaml-4.1.0.tgz", 3177 | "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", 3178 | "dev": true, 3179 | "requires": { 3180 | "argparse": "^2.0.1" 3181 | } 3182 | }, 3183 | "json-schema-traverse": { 3184 | "version": "0.4.1", 3185 | "resolved": "https://registry.npmmirror.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", 3186 | "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", 3187 | "dev": true 3188 | }, 3189 | "json-stable-stringify-without-jsonify": { 3190 | "version": "1.0.1", 3191 | "resolved": "https://registry.npmmirror.com/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", 3192 | "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", 3193 | "dev": true 3194 | }, 3195 | "less": { 3196 | "version": "4.1.3", 3197 | "resolved": "https://registry.npmmirror.com/less/-/less-4.1.3.tgz", 3198 | "integrity": "sha512-w16Xk/Ta9Hhyei0Gpz9m7VS8F28nieJaL/VyShID7cYvP6IL5oHeL6p4TXSDJqZE/lNv0oJ2pGVjJsRkfwm5FA==", 3199 | "requires": { 3200 | "copy-anything": "^2.0.1", 3201 | "errno": "^0.1.1", 3202 | "graceful-fs": "^4.1.2", 3203 | "image-size": "~0.5.0", 3204 | "make-dir": "^2.1.0", 3205 | "mime": "^1.4.1", 3206 | "needle": "^3.1.0", 3207 | "parse-node-version": "^1.0.1", 3208 | "source-map": "~0.6.0", 3209 | "tslib": "^2.3.0" 3210 | } 3211 | }, 3212 | "levn": { 3213 | "version": "0.4.1", 3214 | "resolved": "https://registry.npmmirror.com/levn/-/levn-0.4.1.tgz", 3215 | "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", 3216 | "dev": true, 3217 | "requires": { 3218 | "prelude-ls": "^1.2.1", 3219 | "type-check": "~0.4.0" 3220 | } 3221 | }, 3222 | "locate-path": { 3223 | "version": "6.0.0", 3224 | "resolved": "https://registry.npmmirror.com/locate-path/-/locate-path-6.0.0.tgz", 3225 | "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", 3226 | "dev": true, 3227 | "requires": { 3228 | "p-locate": "^5.0.0" 3229 | } 3230 | }, 3231 | "lodash": { 3232 | "version": "4.17.21", 3233 | "resolved": "https://registry.npmmirror.com/lodash/-/lodash-4.17.21.tgz", 3234 | "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", 3235 | "dev": true 3236 | }, 3237 | "lodash.merge": { 3238 | "version": "4.6.2", 3239 | "resolved": "https://registry.npmmirror.com/lodash.merge/-/lodash.merge-4.6.2.tgz", 3240 | "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", 3241 | "dev": true 3242 | }, 3243 | "lru-cache": { 3244 | "version": "6.0.0", 3245 | "resolved": "https://registry.npmmirror.com/lru-cache/-/lru-cache-6.0.0.tgz", 3246 | "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", 3247 | "dev": true, 3248 | "requires": { 3249 | "yallist": "^4.0.0" 3250 | } 3251 | }, 3252 | "magic-string": { 3253 | "version": "0.25.9", 3254 | "resolved": "https://registry.npmmirror.com/magic-string/-/magic-string-0.25.9.tgz", 3255 | "integrity": "sha512-RmF0AsMzgt25qzqqLc1+MbHmhdx0ojF2Fvs4XnOqz2ZOBXzzkEwc/dJQZCYHAn7v1jbVOjAZfK8msRn4BxO4VQ==", 3256 | "requires": { 3257 | "sourcemap-codec": "^1.4.8" 3258 | } 3259 | }, 3260 | "make-dir": { 3261 | "version": "2.1.0", 3262 | "resolved": "https://registry.npmmirror.com/make-dir/-/make-dir-2.1.0.tgz", 3263 | "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", 3264 | "optional": true, 3265 | "requires": { 3266 | "pify": "^4.0.1", 3267 | "semver": "^5.6.0" 3268 | }, 3269 | "dependencies": { 3270 | "semver": { 3271 | "version": "5.7.1", 3272 | "resolved": "https://registry.npmmirror.com/semver/-/semver-5.7.1.tgz", 3273 | "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", 3274 | "optional": true 3275 | } 3276 | } 3277 | }, 3278 | "mime": { 3279 | "version": "1.6.0", 3280 | "resolved": "https://registry.npmmirror.com/mime/-/mime-1.6.0.tgz", 3281 | "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", 3282 | "optional": true 3283 | }, 3284 | "mime-db": { 3285 | "version": "1.52.0", 3286 | "resolved": "https://registry.npmmirror.com/mime-db/-/mime-db-1.52.0.tgz", 3287 | "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==" 3288 | }, 3289 | "mime-types": { 3290 | "version": "2.1.35", 3291 | "resolved": "https://registry.npmmirror.com/mime-types/-/mime-types-2.1.35.tgz", 3292 | "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", 3293 | "requires": { 3294 | "mime-db": "1.52.0" 3295 | } 3296 | }, 3297 | "minimatch": { 3298 | "version": "3.1.2", 3299 | "resolved": "https://registry.npmmirror.com/minimatch/-/minimatch-3.1.2.tgz", 3300 | "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", 3301 | "dev": true, 3302 | "requires": { 3303 | "brace-expansion": "^1.1.7" 3304 | } 3305 | }, 3306 | "ms": { 3307 | "version": "2.1.2", 3308 | "resolved": "https://registry.npmmirror.com/ms/-/ms-2.1.2.tgz", 3309 | "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", 3310 | "devOptional": true 3311 | }, 3312 | "nanoid": { 3313 | "version": "3.3.4", 3314 | "resolved": "https://registry.npmmirror.com/nanoid/-/nanoid-3.3.4.tgz", 3315 | "integrity": "sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==" 3316 | }, 3317 | "natural-compare": { 3318 | "version": "1.4.0", 3319 | "resolved": "https://registry.npmmirror.com/natural-compare/-/natural-compare-1.4.0.tgz", 3320 | "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", 3321 | "dev": true 3322 | }, 3323 | "needle": { 3324 | "version": "3.2.0", 3325 | "resolved": "https://registry.npmmirror.com/needle/-/needle-3.2.0.tgz", 3326 | "integrity": "sha512-oUvzXnyLiVyVGoianLijF9O/RecZUf7TkBfimjGrLM4eQhXyeJwM6GeAWccwfQ9aa4gMCZKqhAOuLaMIcQxajQ==", 3327 | "optional": true, 3328 | "requires": { 3329 | "debug": "^3.2.6", 3330 | "iconv-lite": "^0.6.3", 3331 | "sax": "^1.2.4" 3332 | }, 3333 | "dependencies": { 3334 | "debug": { 3335 | "version": "3.2.7", 3336 | "resolved": "https://registry.npmmirror.com/debug/-/debug-3.2.7.tgz", 3337 | "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", 3338 | "optional": true, 3339 | "requires": { 3340 | "ms": "^2.1.1" 3341 | } 3342 | } 3343 | } 3344 | }, 3345 | "nth-check": { 3346 | "version": "2.1.1", 3347 | "resolved": "https://registry.npmmirror.com/nth-check/-/nth-check-2.1.1.tgz", 3348 | "integrity": "sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==", 3349 | "dev": true, 3350 | "requires": { 3351 | "boolbase": "^1.0.0" 3352 | } 3353 | }, 3354 | "once": { 3355 | "version": "1.4.0", 3356 | "resolved": "https://registry.npmmirror.com/once/-/once-1.4.0.tgz", 3357 | "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", 3358 | "dev": true, 3359 | "requires": { 3360 | "wrappy": "1" 3361 | } 3362 | }, 3363 | "optionator": { 3364 | "version": "0.9.1", 3365 | "resolved": "https://registry.npmmirror.com/optionator/-/optionator-0.9.1.tgz", 3366 | "integrity": "sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==", 3367 | "dev": true, 3368 | "requires": { 3369 | "deep-is": "^0.1.3", 3370 | "fast-levenshtein": "^2.0.6", 3371 | "levn": "^0.4.1", 3372 | "prelude-ls": "^1.2.1", 3373 | "type-check": "^0.4.0", 3374 | "word-wrap": "^1.2.3" 3375 | } 3376 | }, 3377 | "p-limit": { 3378 | "version": "3.1.0", 3379 | "resolved": "https://registry.npmmirror.com/p-limit/-/p-limit-3.1.0.tgz", 3380 | "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", 3381 | "dev": true, 3382 | "requires": { 3383 | "yocto-queue": "^0.1.0" 3384 | } 3385 | }, 3386 | "p-locate": { 3387 | "version": "5.0.0", 3388 | "resolved": "https://registry.npmmirror.com/p-locate/-/p-locate-5.0.0.tgz", 3389 | "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", 3390 | "dev": true, 3391 | "requires": { 3392 | "p-limit": "^3.0.2" 3393 | } 3394 | }, 3395 | "parent-module": { 3396 | "version": "1.0.1", 3397 | "resolved": "https://registry.npmmirror.com/parent-module/-/parent-module-1.0.1.tgz", 3398 | "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", 3399 | "dev": true, 3400 | "requires": { 3401 | "callsites": "^3.0.0" 3402 | } 3403 | }, 3404 | "parse-node-version": { 3405 | "version": "1.0.1", 3406 | "resolved": "https://registry.npmmirror.com/parse-node-version/-/parse-node-version-1.0.1.tgz", 3407 | "integrity": "sha512-3YHlOa/JgH6Mnpr05jP9eDG254US9ek25LyIxZlDItp2iJtwyaXQb57lBYLdT3MowkUFYEV2XXNAYIPlESvJlA==" 3408 | }, 3409 | "path-exists": { 3410 | "version": "4.0.0", 3411 | "resolved": "https://registry.npmmirror.com/path-exists/-/path-exists-4.0.0.tgz", 3412 | "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", 3413 | "dev": true 3414 | }, 3415 | "path-is-absolute": { 3416 | "version": "1.0.1", 3417 | "resolved": "https://registry.npmmirror.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz", 3418 | "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", 3419 | "dev": true 3420 | }, 3421 | "path-key": { 3422 | "version": "3.1.1", 3423 | "resolved": "https://registry.npmmirror.com/path-key/-/path-key-3.1.1.tgz", 3424 | "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", 3425 | "dev": true 3426 | }, 3427 | "path-parse": { 3428 | "version": "1.0.7", 3429 | "resolved": "https://registry.npmmirror.com/path-parse/-/path-parse-1.0.7.tgz", 3430 | "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", 3431 | "dev": true 3432 | }, 3433 | "picocolors": { 3434 | "version": "1.0.0", 3435 | "resolved": "https://registry.npmmirror.com/picocolors/-/picocolors-1.0.0.tgz", 3436 | "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==" 3437 | }, 3438 | "pify": { 3439 | "version": "4.0.1", 3440 | "resolved": "https://registry.npmmirror.com/pify/-/pify-4.0.1.tgz", 3441 | "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", 3442 | "optional": true 3443 | }, 3444 | "postcss": { 3445 | "version": "8.4.21", 3446 | "resolved": "https://registry.npmmirror.com/postcss/-/postcss-8.4.21.tgz", 3447 | "integrity": "sha512-tP7u/Sn/dVxK2NnruI4H9BG+x+Wxz6oeZ1cJ8P6G/PZY0IKk4k/63TDsQf2kQq3+qoJeLm2kIBUNlZe3zgb4Zg==", 3448 | "requires": { 3449 | "nanoid": "^3.3.4", 3450 | "picocolors": "^1.0.0", 3451 | "source-map-js": "^1.0.2" 3452 | } 3453 | }, 3454 | "postcss-selector-parser": { 3455 | "version": "6.0.11", 3456 | "resolved": "https://registry.npmmirror.com/postcss-selector-parser/-/postcss-selector-parser-6.0.11.tgz", 3457 | "integrity": "sha512-zbARubNdogI9j7WY4nQJBiNqQf3sLS3wCP4WfOidu+p28LofJqDH1tcXypGrcmMHhDk2t9wGhCsYe/+szLTy1g==", 3458 | "dev": true, 3459 | "requires": { 3460 | "cssesc": "^3.0.0", 3461 | "util-deprecate": "^1.0.2" 3462 | } 3463 | }, 3464 | "prelude-ls": { 3465 | "version": "1.2.1", 3466 | "resolved": "https://registry.npmmirror.com/prelude-ls/-/prelude-ls-1.2.1.tgz", 3467 | "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", 3468 | "dev": true 3469 | }, 3470 | "proxy-from-env": { 3471 | "version": "1.1.0", 3472 | "resolved": "https://registry.npmmirror.com/proxy-from-env/-/proxy-from-env-1.1.0.tgz", 3473 | "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==" 3474 | }, 3475 | "prr": { 3476 | "version": "1.0.1", 3477 | "resolved": "https://registry.npmmirror.com/prr/-/prr-1.0.1.tgz", 3478 | "integrity": "sha512-yPw4Sng1gWghHQWj0B3ZggWUm4qVbPwPFcRG8KyxiU7J2OHFSoEHKS+EZ3fv5l1t9CyCiop6l/ZYeWbrgoQejw==", 3479 | "optional": true 3480 | }, 3481 | "punycode": { 3482 | "version": "2.2.0", 3483 | "resolved": "https://registry.npmmirror.com/punycode/-/punycode-2.2.0.tgz", 3484 | "integrity": "sha512-LN6QV1IJ9ZhxWTNdktaPClrNfp8xdSAYS0Zk2ddX7XsXZAxckMHPCBcHRo0cTcEIgYPRiGEkmji3Idkh2yFtYw==", 3485 | "dev": true 3486 | }, 3487 | "queue-microtask": { 3488 | "version": "1.2.3", 3489 | "resolved": "https://registry.npmmirror.com/queue-microtask/-/queue-microtask-1.2.3.tgz", 3490 | "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", 3491 | "dev": true 3492 | }, 3493 | "regexpp": { 3494 | "version": "3.2.0", 3495 | "resolved": "https://registry.npmmirror.com/regexpp/-/regexpp-3.2.0.tgz", 3496 | "integrity": "sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==", 3497 | "dev": true 3498 | }, 3499 | "resolve": { 3500 | "version": "1.22.1", 3501 | "resolved": "https://registry.npmmirror.com/resolve/-/resolve-1.22.1.tgz", 3502 | "integrity": "sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==", 3503 | "dev": true, 3504 | "requires": { 3505 | "is-core-module": "^2.9.0", 3506 | "path-parse": "^1.0.7", 3507 | "supports-preserve-symlinks-flag": "^1.0.0" 3508 | } 3509 | }, 3510 | "resolve-from": { 3511 | "version": "4.0.0", 3512 | "resolved": "https://registry.npmmirror.com/resolve-from/-/resolve-from-4.0.0.tgz", 3513 | "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", 3514 | "dev": true 3515 | }, 3516 | "reusify": { 3517 | "version": "1.0.4", 3518 | "resolved": "https://registry.npmmirror.com/reusify/-/reusify-1.0.4.tgz", 3519 | "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", 3520 | "dev": true 3521 | }, 3522 | "rimraf": { 3523 | "version": "3.0.2", 3524 | "resolved": "https://registry.npmmirror.com/rimraf/-/rimraf-3.0.2.tgz", 3525 | "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", 3526 | "dev": true, 3527 | "requires": { 3528 | "glob": "^7.1.3" 3529 | } 3530 | }, 3531 | "rollup": { 3532 | "version": "3.10.0", 3533 | "resolved": "https://registry.npmmirror.com/rollup/-/rollup-3.10.0.tgz", 3534 | "integrity": "sha512-JmRYz44NjC1MjVF2VKxc0M1a97vn+cDxeqWmnwyAF4FvpjK8YFdHpaqvQB+3IxCvX05vJxKZkoMDU8TShhmJVA==", 3535 | "dev": true, 3536 | "requires": { 3537 | "fsevents": "~2.3.2" 3538 | } 3539 | }, 3540 | "run-parallel": { 3541 | "version": "1.2.0", 3542 | "resolved": "https://registry.npmmirror.com/run-parallel/-/run-parallel-1.2.0.tgz", 3543 | "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", 3544 | "dev": true, 3545 | "requires": { 3546 | "queue-microtask": "^1.2.2" 3547 | } 3548 | }, 3549 | "safer-buffer": { 3550 | "version": "2.1.2", 3551 | "resolved": "https://registry.npmmirror.com/safer-buffer/-/safer-buffer-2.1.2.tgz", 3552 | "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", 3553 | "optional": true 3554 | }, 3555 | "sax": { 3556 | "version": "1.2.4", 3557 | "resolved": "https://registry.npmmirror.com/sax/-/sax-1.2.4.tgz", 3558 | "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==", 3559 | "optional": true 3560 | }, 3561 | "semver": { 3562 | "version": "7.3.8", 3563 | "resolved": "https://registry.npmmirror.com/semver/-/semver-7.3.8.tgz", 3564 | "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", 3565 | "dev": true, 3566 | "requires": { 3567 | "lru-cache": "^6.0.0" 3568 | } 3569 | }, 3570 | "shebang-command": { 3571 | "version": "2.0.0", 3572 | "resolved": "https://registry.npmmirror.com/shebang-command/-/shebang-command-2.0.0.tgz", 3573 | "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", 3574 | "dev": true, 3575 | "requires": { 3576 | "shebang-regex": "^3.0.0" 3577 | } 3578 | }, 3579 | "shebang-regex": { 3580 | "version": "3.0.0", 3581 | "resolved": "https://registry.npmmirror.com/shebang-regex/-/shebang-regex-3.0.0.tgz", 3582 | "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", 3583 | "dev": true 3584 | }, 3585 | "source-map": { 3586 | "version": "0.6.1", 3587 | "resolved": "https://registry.npmmirror.com/source-map/-/source-map-0.6.1.tgz", 3588 | "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" 3589 | }, 3590 | "source-map-js": { 3591 | "version": "1.0.2", 3592 | "resolved": "https://registry.npmmirror.com/source-map-js/-/source-map-js-1.0.2.tgz", 3593 | "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==" 3594 | }, 3595 | "sourcemap-codec": { 3596 | "version": "1.4.8", 3597 | "resolved": "https://registry.npmmirror.com/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz", 3598 | "integrity": "sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==" 3599 | }, 3600 | "strip-ansi": { 3601 | "version": "6.0.1", 3602 | "resolved": "https://registry.npmmirror.com/strip-ansi/-/strip-ansi-6.0.1.tgz", 3603 | "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", 3604 | "dev": true, 3605 | "requires": { 3606 | "ansi-regex": "^5.0.1" 3607 | } 3608 | }, 3609 | "strip-json-comments": { 3610 | "version": "3.1.1", 3611 | "resolved": "https://registry.npmmirror.com/strip-json-comments/-/strip-json-comments-3.1.1.tgz", 3612 | "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", 3613 | "dev": true 3614 | }, 3615 | "supports-color": { 3616 | "version": "7.2.0", 3617 | "resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-7.2.0.tgz", 3618 | "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", 3619 | "dev": true, 3620 | "requires": { 3621 | "has-flag": "^4.0.0" 3622 | } 3623 | }, 3624 | "supports-preserve-symlinks-flag": { 3625 | "version": "1.0.0", 3626 | "resolved": "https://registry.npmmirror.com/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", 3627 | "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", 3628 | "dev": true 3629 | }, 3630 | "text-table": { 3631 | "version": "0.2.0", 3632 | "resolved": "https://registry.npmmirror.com/text-table/-/text-table-0.2.0.tgz", 3633 | "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==", 3634 | "dev": true 3635 | }, 3636 | "tslib": { 3637 | "version": "2.4.1", 3638 | "resolved": "https://registry.npmmirror.com/tslib/-/tslib-2.4.1.tgz", 3639 | "integrity": "sha512-tGyy4dAjRIEwI7BzsB0lynWgOpfqjUdq91XXAlIWD2OwKBH7oCl/GZG/HT4BOHrTlPMOASlMQ7veyTqpmRcrNA==" 3640 | }, 3641 | "type-check": { 3642 | "version": "0.4.0", 3643 | "resolved": "https://registry.npmmirror.com/type-check/-/type-check-0.4.0.tgz", 3644 | "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", 3645 | "dev": true, 3646 | "requires": { 3647 | "prelude-ls": "^1.2.1" 3648 | } 3649 | }, 3650 | "type-fest": { 3651 | "version": "0.20.2", 3652 | "resolved": "https://registry.npmmirror.com/type-fest/-/type-fest-0.20.2.tgz", 3653 | "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", 3654 | "dev": true 3655 | }, 3656 | "uri-js": { 3657 | "version": "4.4.1", 3658 | "resolved": "https://registry.npmmirror.com/uri-js/-/uri-js-4.4.1.tgz", 3659 | "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", 3660 | "dev": true, 3661 | "requires": { 3662 | "punycode": "^2.1.0" 3663 | } 3664 | }, 3665 | "util-deprecate": { 3666 | "version": "1.0.2", 3667 | "resolved": "https://registry.npmmirror.com/util-deprecate/-/util-deprecate-1.0.2.tgz", 3668 | "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", 3669 | "dev": true 3670 | }, 3671 | "vite": { 3672 | "version": "4.0.4", 3673 | "resolved": "https://registry.npmmirror.com/vite/-/vite-4.0.4.tgz", 3674 | "integrity": "sha512-xevPU7M8FU0i/80DMR+YhgrzR5KS2ORy1B4xcX/cXLsvnUWvfHuqMmVU6N0YiJ4JWGRJJsLCgjEzKjG9/GKoSw==", 3675 | "dev": true, 3676 | "requires": { 3677 | "esbuild": "^0.16.3", 3678 | "fsevents": "~2.3.2", 3679 | "postcss": "^8.4.20", 3680 | "resolve": "^1.22.1", 3681 | "rollup": "^3.7.0" 3682 | } 3683 | }, 3684 | "vue": { 3685 | "version": "3.2.45", 3686 | "resolved": "https://registry.npmmirror.com/vue/-/vue-3.2.45.tgz", 3687 | "integrity": "sha512-9Nx/Mg2b2xWlXykmCwiTUCWHbWIj53bnkizBxKai1g61f2Xit700A1ljowpTIM11e3uipOeiPcSqnmBg6gyiaA==", 3688 | "requires": { 3689 | "@vue/compiler-dom": "3.2.45", 3690 | "@vue/compiler-sfc": "3.2.45", 3691 | "@vue/runtime-dom": "3.2.45", 3692 | "@vue/server-renderer": "3.2.45", 3693 | "@vue/shared": "3.2.45" 3694 | } 3695 | }, 3696 | "vue-eslint-parser": { 3697 | "version": "9.1.0", 3698 | "resolved": "https://registry.npmmirror.com/vue-eslint-parser/-/vue-eslint-parser-9.1.0.tgz", 3699 | "integrity": "sha512-NGn/iQy8/Wb7RrRa4aRkokyCZfOUWk19OP5HP6JEozQFX5AoS/t+Z0ZN7FY4LlmWc4FNI922V7cvX28zctN8dQ==", 3700 | "dev": true, 3701 | "requires": { 3702 | "debug": "^4.3.4", 3703 | "eslint-scope": "^7.1.1", 3704 | "eslint-visitor-keys": "^3.3.0", 3705 | "espree": "^9.3.1", 3706 | "esquery": "^1.4.0", 3707 | "lodash": "^4.17.21", 3708 | "semver": "^7.3.6" 3709 | } 3710 | }, 3711 | "vue-router": { 3712 | "version": "4.1.6", 3713 | "resolved": "https://registry.npmmirror.com/vue-router/-/vue-router-4.1.6.tgz", 3714 | "integrity": "sha512-DYWYwsG6xNPmLq/FmZn8Ip+qrhFEzA14EI12MsMgVxvHFDYvlr4NXpVF5hrRH1wVcDP8fGi5F4rxuJSl8/r+EQ==", 3715 | "requires": { 3716 | "@vue/devtools-api": "^6.4.5" 3717 | } 3718 | }, 3719 | "which": { 3720 | "version": "2.0.2", 3721 | "resolved": "https://registry.npmmirror.com/which/-/which-2.0.2.tgz", 3722 | "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", 3723 | "dev": true, 3724 | "requires": { 3725 | "isexe": "^2.0.0" 3726 | } 3727 | }, 3728 | "word-wrap": { 3729 | "version": "1.2.3", 3730 | "resolved": "https://registry.npmmirror.com/word-wrap/-/word-wrap-1.2.3.tgz", 3731 | "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==", 3732 | "dev": true 3733 | }, 3734 | "wrappy": { 3735 | "version": "1.0.2", 3736 | "resolved": "https://registry.npmmirror.com/wrappy/-/wrappy-1.0.2.tgz", 3737 | "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", 3738 | "dev": true 3739 | }, 3740 | "xml-name-validator": { 3741 | "version": "4.0.0", 3742 | "resolved": "https://registry.npmmirror.com/xml-name-validator/-/xml-name-validator-4.0.0.tgz", 3743 | "integrity": "sha512-ICP2e+jsHvAj2E2lIHxa5tjXRlKDJo4IdvPvCXbXQGdzSfmSpNVyIKMvoZHjDY9DP0zV17iI85o90vRFXNccRw==", 3744 | "dev": true 3745 | }, 3746 | "yallist": { 3747 | "version": "4.0.0", 3748 | "resolved": "https://registry.npmmirror.com/yallist/-/yallist-4.0.0.tgz", 3749 | "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", 3750 | "dev": true 3751 | }, 3752 | "yocto-queue": { 3753 | "version": "0.1.0", 3754 | "resolved": "https://registry.npmmirror.com/yocto-queue/-/yocto-queue-0.1.0.tgz", 3755 | "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", 3756 | "dev": true 3757 | } 3758 | } 3759 | } 3760 | -------------------------------------------------------------------------------- /front_end/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "front_end", 3 | "version": "0.0.0", 4 | "private": true, 5 | "scripts": { 6 | "dev": "vite", 7 | "build": "vite build", 8 | "preview": "vite preview", 9 | "lint": "eslint . --ext .vue,.js,.jsx,.cjs,.mjs --fix --ignore-path .gitignore" 10 | }, 11 | "dependencies": { 12 | "axios": "^1.2.2", 13 | "bootstrap": "^5.2.3", 14 | "less": "^4.1.3", 15 | "vue": "^3.2.45", 16 | "vue-router": "^4.1.6" 17 | }, 18 | "devDependencies": { 19 | "@vitejs/plugin-vue": "^4.0.0", 20 | "eslint": "^8.22.0", 21 | "eslint-plugin-vue": "^9.3.0", 22 | "vite": "^4.0.0" 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /front_end/public/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/YIILAA/zjuKnowledgeGraph/8373e0b31be47c0af697ee16f9ada5405b464217/front_end/public/favicon.ico -------------------------------------------------------------------------------- /front_end/src/App.vue: -------------------------------------------------------------------------------- 1 | 40 | 41 | 56 | 57 | 118 | -------------------------------------------------------------------------------- /front_end/src/assets/main.css: -------------------------------------------------------------------------------- 1 | #app { 2 | 3 | font-weight: normal; 4 | } 5 | -------------------------------------------------------------------------------- /front_end/src/components/MyHeader.vue: -------------------------------------------------------------------------------- 1 | 13 | 14 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /front_end/src/main.js: -------------------------------------------------------------------------------- 1 | import { createApp } from 'vue' 2 | import App from './App.vue' 3 | import router from './router' 4 | 5 | import 'bootstrap/dist/css/bootstrap.min.css' 6 | import './assets/main.css' 7 | 8 | import axios from 'axios' 9 | 10 | const app = createApp(App) 11 | // 路由 12 | app.use(router) 13 | // 全局配置axios 14 | // axios.defaults.baseURL = 'http://127.0.0.1:5001' 15 | app.config.globalProperties.$http = axios 16 | axios.defaults.headers.post['Content-Type'] = 'application/json' 17 | 18 | app.mount('#app') 19 | -------------------------------------------------------------------------------- /front_end/src/router/index.js: -------------------------------------------------------------------------------- 1 | import { createRouter, createWebHistory } from 'vue-router' 2 | import IntroView from '@/views/IntroView.vue' 3 | import QueryView from '@/views/QueryView.vue' 4 | 5 | const router = createRouter({ 6 | history: createWebHistory(import.meta.env.BASE_URL), 7 | routes: [ 8 | { 9 | path: '/', 10 | name: 'intro', 11 | component: IntroView 12 | }, 13 | { 14 | path: '/query', 15 | name: 'query', 16 | component: QueryView 17 | } 18 | ] 19 | }) 20 | 21 | export default router 22 | -------------------------------------------------------------------------------- /front_end/src/views/IntroView.vue: -------------------------------------------------------------------------------- 1 | 19 | 20 | 23 | 24 | 31 | -------------------------------------------------------------------------------- /front_end/src/views/QueryView.vue: -------------------------------------------------------------------------------- 1 | 41 | 42 | 90 | 91 | 102 | -------------------------------------------------------------------------------- /front_end/vite.config.js: -------------------------------------------------------------------------------- 1 | import { fileURLToPath, URL } from 'node:url' 2 | 3 | import { defineConfig } from 'vite' 4 | import vue from '@vitejs/plugin-vue' 5 | 6 | // https://vitejs.dev/config/ 7 | export default defineConfig({ 8 | plugins: [vue()], 9 | resolve: { 10 | alias: { 11 | '@': fileURLToPath(new URL('./src', import.meta.url)) 12 | } 13 | }, 14 | server: { 15 | proxy: { 16 | '/api': { 17 | target: 'http://127.0.0.1:5001', 18 | changeOrigin: true, 19 | rewrite: path => path.replace(/^\/api/, '') 20 | } 21 | } 22 | } 23 | }) 24 | --------------------------------------------------------------------------------