From a104143d649a3da2ebd254e2f1667605c6fc6943 Mon Sep 17 00:00:00 2001 From: OrangeM21 Date: Fri, 20 Mar 2020 12:38:40 +0800 Subject: [PATCH] =?UTF-8?q?[update]=E6=B7=BB=E5=8A=A0=E7=BF=BB=E8=AF=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- package.json | 1 + src/i18n/i18n.js | 14 + src/i18n/index.js | 6 + src/i18n/langs/cn.js | 305 ++++++++++++++++++ src/i18n/langs/en.js | 301 +++++++++++++++++ src/i18n/langs/index.js | 6 + src/layout/components/TagsView/ScrollPane.vue | 89 +++++ src/layout/components/TagsView/index.vue | 294 +++++++++++++++++ src/main.js | 2 + src/settings.js | 2 +- yarn.lock | 125 +------ 11 files changed, 1030 insertions(+), 115 deletions(-) create mode 100644 src/i18n/i18n.js create mode 100644 src/i18n/index.js create mode 100644 src/i18n/langs/cn.js create mode 100644 src/i18n/langs/en.js create mode 100644 src/i18n/langs/index.js create mode 100644 src/layout/components/TagsView/ScrollPane.vue create mode 100644 src/layout/components/TagsView/index.vue diff --git a/package.json b/package.json index 4e6dc90b5..30f435f27 100644 --- a/package.json +++ b/package.json @@ -22,6 +22,7 @@ "nprogress": "0.2.0", "path-to-regexp": "2.4.0", "vue": "2.6.10", + "vue-i18n": "^8.15.5", "vue-router": "3.0.6", "vuex": "3.1.0" }, diff --git a/src/i18n/i18n.js b/src/i18n/i18n.js new file mode 100644 index 000000000..5cc800484 --- /dev/null +++ b/src/i18n/i18n.js @@ -0,0 +1,14 @@ +// i18n.js +import Vue from 'vue' +import locale from 'element-ui/lib/locale' +import VueI18n from 'vue-i18n' +import messages from './langs' + +Vue.use(VueI18n) +const i18n = new VueI18n({ + locale: localStorage.lang || 'cn', + messages +}) +locale.i18n((key, value) => i18n.t(key, value)) // 重点: 为了实现element插件的多语言切换 + +export default i18n diff --git a/src/i18n/index.js b/src/i18n/index.js new file mode 100644 index 000000000..2dd220a3c --- /dev/null +++ b/src/i18n/index.js @@ -0,0 +1,6 @@ +import en from './langs/en' +import cn from './langs/cn' +export default { + en, + cn +} diff --git a/src/i18n/langs/cn.js b/src/i18n/langs/cn.js new file mode 100644 index 000000000..a4ded3115 --- /dev/null +++ b/src/i18n/langs/cn.js @@ -0,0 +1,305 @@ +import zhLocale from 'element-ui/lib/locale/lang/zh-CN' +const cn = { + message: { + 'hello': '你好, 世界', + 'login': '登录' + }, + header: { + 'language': '中文', + 'help': '帮助', + 'Documents': '文档', + 'CommercialSupport': '商业支持' + }, + menu: { + 'dashboard': '仪表盘', + 'users': '用户管理', + 'userlist': '用户列表', + 'usergroup': '用户组', + 'assets': '资产管理', + 'applications': '应用管理', + 'perms': '权限管理', + 'sessions': '会话管理', + 'jobcenter': '作业中心' + }, + // 用户模块翻译 + users: { + 'createuser': '创建用户', + 'updateuser': '更新用户', + 'user_detail': '用户详情', + 'name': '名称', + 'username': '用户名', + 'email': '邮箱', + 'usergroup': '用户组', + 'role': '角色', + 'MFAcertification': 'MFA 认证', + 'source': '来源', + 'validity': '有效', + 'action': '操作', + 'update': '更新', + 'delete': '删除', + 'search': '搜索', + 'create_by': '创建者', + 'date_expired': '失效日期', + 'date_joined': '创建日期', + 'last_login': '最后登录', + 'last_password_updated': '最后更新密码', + 'usergrouplist': '用户组列表', + 'createusergroup': '创建用户组', + 'comment': '备注', + 'user': '用户', + 'admin': '管理员', + 'auditor': '审计员', + 'off': 'OFF', + 'on': 'ON', + 'local': '数据库', + 'disable': '禁用', + 'enable': '启用', + 'force_enable': '强制启用', + 'quick_modify': '快速修改', + 'active': '激活中', + 'force_enabled_mfa': '强制启用多因子认证', + 'reset_maf': '重置多因子认证', + 'reset': '重置', + 'send_reset_password_mail': '发送重置密码邮件', + 'send_reset_ssh_key_mail': '发送重置密钥邮件', + 'send': '发送', + 'user_group': '用户组', + 'join_user_groups': '添加到用户组', + 'join': '加入', + 'login_confirm': '登录复核', + 'reviewers': '审批人', + 'confirm': '确认', + 'user_permissions': '用户授权', + 'asset_granted': '资产的授权', + 'asset_permission': '授权资产', + 'remote_app_granted': '授权的远程应用', + 'remote_app_permission': '远程应用授权', + 'database_app_granted': '授权的数据库应用', + 'database_app_permission': '数据库应用授权' + }, + // 用户组 + usergroup: { + 'user_group_list': '用户组列表', + 'user_group_detail': '用户组详情', + 'create_user_group': '创建用户组', + 'update_user_group': '更新用户组', + 'name': '名称', + 'user': '用户', + 'comment': '备注', + 'action': '操作', + 'update': '更新', + 'delete': '删除', + 'created_by': '创建者', + 'date_created': '创建日期', + 'asset_granted': '授权的资产', + 'add_user': '添加用户', + 'add': '添加' + }, + assets: { + // asset + 'asset_list': '资产列表', + 'asset_detail': '资产详情', + 'create_asset': '创建资产', + 'update_asset': '更新资产', + 'hostname': '主机名', + 'ip': 'IP', + 'hardware': '硬件', + 'reachable': '可连接', + 'action': '动作', + 'update': '更新', + 'delete': '删除', + 'search': '搜索', + 'delete_selected': '批量删除', + 'update_selected': '批量更新', + 'remove_from_this_node': '从节点移除', + 'deactive_selected': '禁用所选', + 'active_selected': '激活所选', + 'submit': '提交', + 'platform': '系统平台', + 'public_ip': '公网IP', + 'domain': '网域', + 'admin_user': '管理用户', + 'node': '节点', + 'label': '标签', + 'comment': '备注', + 'basic': '基本', + 'protocols': '协议组', + 'auth': '认证', + 'labels': '标签管理', + 'other': '其它', + 'vendor': '制造商', + 'model': '型号', + 'cpu': 'CPU', + 'memory': '内存', + 'disk': '硬盘', + 'os': '操作系统', + 'is_active': '激活', + 'serial_number': '序列号', + 'asset_number': '资产编号', + 'created_by': '创建者', + 'date_joined': '创建日期', + 'quick_modify': '快速修改', + 'active': '激活中', + 'refresh_hardware': '更新硬件信息', + 'test_connective': '测试可连接性', + 'refresh': '刷新', + 'test': '测试', + 'confirm': '确认', + 'asset_user_list': '资产用户列表', + // 网域 + 'domain_list': '网域列表', + 'domain_detail': '网域详情', + 'create_domain': '创建网域', + 'update_domain': '更新网域', + 'name': '名称', + 'asset': '资产', + 'gateway': '网关', + 'date_created': '创建日期', + // 管理用户 + 'admin_user_list': '管理用户列表', + 'admin_user_detail': '管理用户详情', + 'create_admin_user': '创建管理用户', + 'update_admin_user': '更新管理用户', + 'username': '用户名', + 'replace_node_assets_admin_user_with_this': '替换资产的管理员', + 'select_nodes': '选择节点', + // 系统用户 + 'system_user_list': '系统用户列表', + 'create_system_user': '创建系统用户', + 'update_system_user': '更新系统用户', + 'system_user_detail': '系统用户详情', + 'protocol': '协议', + 'login_mode': '登录模式', + 'quick_update': '快速更新', + 'auto_push': '自动更新', + // 标签 + 'label_list': '标签列表', + 'label_detail': '标签详情', + 'create_label': '创建标签', + 'update_label': '更新标签', + 'value': '值', + // 命令过滤 + 'command_filter_list': '命令过滤器列表', + 'create_command_filter': '创建命令过滤器', + 'update_command_filter': '更新命令过滤器', + 'command_filter_detail': '命令过滤器详情', + 'rules': '规则', + 'system_user': '系统用户', + 'date_updated': '更新日期', + 'binding_to_system_user': '绑定到系统用户', + // 系统平台 + 'platform_list': '平台列表', + 'create_platform': '创建系统平台', + 'update_platform': '更新系统平台', + 'platform_detail': '平台详情', + 'base_platform': '基础平台', + 'charset': '编码', + 'meta': '元数据' + }, + applications: { + 'applications': '应用管理', + 'remote_app_list': '远程应用列表', + 'create_remote_app': '创建远程应用', + 'remote_app_detail': '远程应用详情', + 'update_remote_app': '更新远程应用', + 'name': '名称', + 'app_type': '应用类型', + 'asset': '资产', + 'action': '操作', + 'update': '更新', + 'delete': '删除', + 'comment': '备注', + 'database_app_list': '数据库应用列表', + 'database_app_detail': '数据库应用详情', + 'create_database_app': '创建数据库应用', + 'update_database_app': '更新数据库应用', + 'type': '类型', + 'host': '主机', + 'port': '端口', + 'database': '数据库', + 'search': '搜索', + 'date_created': '创建日期', + 'created_by': '创建者', + 'app_path': '应用路径' + }, + perms: { + 'asset_permission': '资产授权', + 'asset_permission_list': '资产授权列表', + 'asset_permission_detail': '资产授权详情', + 'create_asset_permission': '创建资产授权规则', + 'update_asset_permission': '更新资产授权规则', + 'name': '名称', + 'user': '用户', + 'user_group': '用户组', + 'asset': '资产', + 'node': '节点', + 'system_user': '系统用户', + 'validity': '有效', + 'action': '动作', + 'update': '更新', + 'delete': '删除', + 'search': '搜索', + 'user_count': '用户数量', + 'user_group_count': '用户组数量', + 'asset_count': '资产数量', + 'node_count': '节点数量', + 'system_user_count': '系统用户数量', + 'date_start': '开始日期', + 'date_expired': '失效日期', + 'date_created': '创建日期', + 'created_by': '创建者', + 'comment': '备注', + 'quick_update': '快速更新', + 'active': '激活中', + 'users_and_user_groups': '用户或用户组', + 'assets_and_node': '资产或节点', + // + 'remote_app': '远程应用', + 'remote_app_permission_list': '远程应用授权列表', + 'remote_app_permission_detail': '远程应用授权详情', + 'create_remote_app_permission': '创建远程应用授权规则', + 'update_remote_app_permission': '更新远程应用授权规则', + 'remote_app_count': '远程应用数量', + // + 'database_app': '数据库应用', + 'database_app_permission_list': '数据库应用授权列表', + 'database_app_permission_detail': '数据库应用授权详情', + 'create_database_app_permission': '创建数据库应用授权规则', + 'update_database_app_permission': '更新数据库应用授权规则', + 'database_app_count': '数据库应用数量' + }, + sessions: { + 'session_online': '在线会话', + 'session_online_list': '在线会话', + 'session_detail': '会话详情', + 'id': 'ID', + 'user': '用户', + 'asset': '资产', + 'system_user': '系统用户', + 'remote_addr': '远端地址', + 'protocol': '协议', + 'login_form': '登录来源', + 'command': '命令', + 'date_start': '开始日期', + 'duration': '时长', + 'action': '动作', + 'search': '搜索', + 'terminate_selected': '终断所选', + 'confirm_finished': '确认已完成', + 'submit': '提交', + 'terminate': '终断', + 'command_list': '命令记录列表', + 'date_end': '结束日期', + 'quick_modify': '快速修改', + 'terminate_session': '终止会话', + 'confirm': '确认', + 'commands': '命令记录' + }, + setting: { + 'setting': '系统设置', + 'basicsetting': '基本设置' + }, + ...zhLocale +} + +export default cn diff --git a/src/i18n/langs/en.js b/src/i18n/langs/en.js new file mode 100644 index 000000000..aa42838ee --- /dev/null +++ b/src/i18n/langs/en.js @@ -0,0 +1,301 @@ +import enLocale from 'element-ui/lib/locale/lang/en' +const en = { + message: { + 'hello': 'hello, world', + 'login': 'Login' + }, + header: { + 'language': 'English', + 'help': 'help', + 'Documents': 'Documents', + 'CommercialSupport': 'Commercial Support' + + }, + menu: { + 'dashboard': 'Dashboard', + 'users': 'Users', + 'userlist': 'User List', + 'usergroup': 'User Group', + 'assets': 'Assets', + 'applications': 'Applications', + 'perms': 'Perms', + 'sessions': 'Sessions', + 'jobcenter': 'Job Center' + }, + users: { + 'createuser': 'Cerate User', + 'updateuser': 'Update User', + 'user_detail': 'User Detail', + 'name': 'Name', + 'username': 'Username', + 'email': 'Email', + 'usergroup': 'User Group', + 'role': 'Role', + 'MFAcertification': 'MFA certification', + 'source': 'Source', + 'validity': 'Validity', + 'action': 'Action', + 'update': 'Update', + 'delete': 'Delete', + 'search': 'Search', + 'create_by': 'Create by', + 'date_expired': 'Date expired', + 'date_joined': 'Date joined', + 'last_login': 'Last login', + 'last_password_updated': 'Last password updated', + 'usergrouplist': 'User Group List', + 'createusergroup': 'Create User Group', + 'comment': 'comment', + 'user': 'User', + 'admin': 'Admin', + 'auditor': 'Auditor', + 'off': 'OFF', + 'on': 'ON', + 'local': 'Local', + 'disable': 'Disable', + 'enable': 'Enable', + 'force_enable': 'Force enable', + 'quick_modify': 'Quick modify', + 'active': 'Active', + 'force_enabled_mfa': 'Force enabled MFA', + 'reset_maf': 'Reset MFA', + 'reset': 'Reset', + 'send_reset_password_mail': 'Send reset password mail', + 'send_reset_ssh_key_mail': 'Send reset ssh key mail', + 'send': 'Send', + 'user_group': 'User Group', + 'join_user_groups': 'Join user groups', + 'join': 'Join', + 'login_confirm': 'Login confirm', + 'reviewers': 'Reviewers', + 'confirm': 'Confirm', + 'user_permissions': 'User permissions', + 'asset_granted': 'Asset granted', + 'asset_permission': 'Asset permission', + 'remote_app_granted': 'RemoteApp granted', + 'remote_app_permission': 'RemoteApp permission', + 'database_app_granted': 'DatabaseApp granted', + 'database_app_permission': 'DatabaseApp permission' + }, + usergroup: { + 'user_group_list': 'User group list', + 'user_group_detail': 'User group detail', + 'create_user_group': 'Create user group', + 'update_user_group': 'Update user group', + 'name': 'Name', + 'user': 'User', + 'comment': 'Comment', + 'action': 'Action', + 'update': 'Update', + 'delete': 'Delete', + 'created_by': 'Create by', + 'date_created': 'Date created', + 'asset_granted': 'Asset Granted', + 'add_user': 'Add user', + 'add': 'Add' + }, + assets: { + 'asset_list': 'Asset list', + 'asset_detail': 'Asset detail', + 'create_asset': 'Create asset', + 'update_asset': 'Update asset', + 'hostname': 'Hostname', + 'ip': 'IP', + 'hardware': 'Hardware', + 'reachable': 'Reachable', + 'action': 'Action', + 'update': 'Update', + 'delete': 'Delete', + 'search': 'Search', + 'delete_selected': 'Delete selected', + 'update_selected': 'Update selected', + 'remove_from_this_node': 'Remove from this node', + 'deactive_selected': 'Deactive selected', + 'active_selected': 'Active selected', + 'submit': 'Submit', + 'platform': 'Platform', + 'public_ip': 'Public Ip', + 'domain': 'Domain', + 'admin_user': 'Admin user', + 'node': 'Node', + 'label': 'Label', + 'comment': 'Comment', + 'basic': 'Basic', + 'protocols': 'Protocols', + 'auth': 'Auth', + 'labels': 'Labels', + 'other': 'Other', + 'vendor': 'Vendor', + 'model': 'Model', + 'cpu': 'CPU', + 'memory': 'Memory', + 'disk': 'Disk', + 'os': 'OS', + 'is_active': 'Is active', + 'serial_number': 'Serial number', + 'asset_number': 'Asset number', + 'created_by': 'Created by', + 'date_joined': 'Date joined', + 'quick_modify': 'Quick modify', + 'active': 'Active', + 'refresh_hardware': 'Refresh hardware', + 'test_connective': 'Test connective', + 'refresh': 'Refresh', + 'test': 'Test', + 'confirm': 'Confirm', + 'asset_user_list': 'Asset user list', + // 网域 + 'domain_list': 'Domain list', + 'domain_detail': 'Domain detail', + 'create_domain': 'Create domain', + 'update_domain': 'Update domain', + 'name': 'Name', + 'asset': 'Asset', + 'gateway': 'Gateway', + 'date_created': 'Date created', + // 管理用户 + 'admin_user_list': 'Admin user list', + 'admin_user_detail': 'Admin user detail', + 'create_admin_user': 'Create admin user', + 'update_admin_user': 'Update admin user', + 'username': 'Username', + 'replace_node_assets_admin_user_with_this': 'Replace node assets admin user with this', + 'select_nodes': 'Select nodes', + // 系统用户 + 'system_user_list': 'System user list', + 'create_system_user': 'Create system user', + 'update_system_user': 'Update system user', + 'system_user_detail': 'System user detail', + 'protocol': 'Protocol', + 'login_mode': 'Login mode', + 'quick_update': 'Quick update', + 'auto_push': 'Auto push', + // 标签 + 'label_list': 'Label list', + 'label_detail': 'Label detail', + 'create_label': 'Create label', + 'update_label': 'Update label', + 'value': 'Value', + // 命令过滤 + 'command_filter_list': 'Command filter list', + 'create_command_filter': 'Create command filter', + 'update_command_filter': 'Update command filter', + 'command_filter_detail': 'command filter detail', + 'rules': 'rules', + 'system_user': 'System user', + 'date_updated': 'Date updated', + 'binding_to_system_user': 'Binding to system user', + // 系统平台 + 'platform_list': 'Platform list', + 'create_platform': 'Create platform', + 'update_platform': 'Update platform', + 'platform_detail': 'Platform detail', + 'base_platform': 'Base platform', + 'charset': 'Charset', + 'meta': 'Meta' + }, + applications: { + 'applications': 'Applications', + 'remote_app_list': 'RemoteApp list', + 'create_remote_app': 'Create RemoteApp', + 'remote_app_detail': 'RemoteApp detail', + 'update_remote_app': 'Update RemoteApp', + 'name': 'Name', + 'app_type': 'App type', + 'action': 'Action', + 'update': 'Update', + 'delete': 'Detele', + 'comment': 'Comment', + 'database_app_list': 'DatabaseApp list', + 'database_app_detail': 'DatabaseApp detail', + 'create_database_app': 'Create DatabaseApp', + 'update_database_app': 'Update DatabaseApp', + 'type': 'Type', + 'host': 'Host', + 'port': 'Port', + 'database': 'Database', + 'search': 'Search', + 'date_created': 'Date created', + 'created_by': 'Created by', + 'app_path': 'App path' + }, + perms: { + 'asset_permission': 'Asset permission', + 'asset_permission_list': 'Asset permission list', + 'asset_permission_detail': 'Asset permission detail', + 'create_asset_permission': 'Create asset permission', + 'update_asset_permission': 'Update asset permission', + 'name': 'Name', + 'user': 'User', + 'user_group': 'User group', + 'asset': 'Asset', + 'node': 'Node', + 'system_user': 'System user', + 'validity': 'Validity', + 'action': 'Action', + 'update': 'Update', + 'delete': 'Detele', + 'search': 'Search', + 'user_count': 'User count', + 'user_group_count': 'User group count', + 'asset_count': 'Asset count', + 'node_count': 'Node count', + 'system_user_count': 'System user count', + 'date_start': 'Date start', + 'dateexpired': 'Date expired', + 'date_created': 'Date created', + 'created_by': 'Created by', + 'comment': 'Comment', + 'quick_update': 'Quick update', + 'active': 'Active', + 'users_and_user_groups': 'Users and user groups', + 'assets_and_node': 'Assets and node', + // + 'remote_app': 'RemoteApp', + 'remote_app_permission_list': ' RemoteApp permission list', + 'remote_app_permission_detail': 'RemoteApp permission detail', + 'create_remote_app_permission': 'Create RemoteApp permission', + 'update_remote_app_permission': 'Update RemoteApp permission', + 'remote_app_count': 'RemoteApp count', + // + 'database_app': 'DatabaseApp', + 'database_app_permission_list': 'DatabaseApp permission list', + 'database_app_permission_detail': 'DatabaseApp permission detail', + 'create_database_app_permission': 'Create DatabaseApp permission', + 'update_database_app_permission': 'Update DatabaseApp permission', + 'database_app_count': 'DatabaseApp count' + }, + sessions: { + 'session_online_list': '', + 'session_detail': ' Session detail', + 'id': '', + 'user': 'Use', + 'asset': 'Asset', + 'system_user': 'System user', + 'remote_addr': 'Remote addr', + 'protocol': 'Protocol', + 'login_form': 'Login from', + 'command': 'Command', + 'date_start': 'Date start', + 'duration': 'Druation', + 'action': 'Action', + 'search': 'Search', + 'terminate_selected': 'Terminate selected', + 'confirm_finished': 'Confirm finished', + 'submit': 'Submit', + 'terminate': 'Terminate', + 'command_list': 'Command list', + 'date_end': 'Date end', + 'quick_modify': 'Quick modify', + 'terminate_session': 'Terminate session', + 'confirm': 'Confirm', + 'commands': 'Commands' + }, + setting: { + 'setting': 'System Setting', + 'basicsetting': 'Basic Setting' + }, + ...enLocale +} + +export default en diff --git a/src/i18n/langs/index.js b/src/i18n/langs/index.js new file mode 100644 index 000000000..6cd8b42ce --- /dev/null +++ b/src/i18n/langs/index.js @@ -0,0 +1,6 @@ +import en from './en' +import cn from './cn' +export default { + en, + cn +} diff --git a/src/layout/components/TagsView/ScrollPane.vue b/src/layout/components/TagsView/ScrollPane.vue new file mode 100644 index 000000000..93f1f04ff --- /dev/null +++ b/src/layout/components/TagsView/ScrollPane.vue @@ -0,0 +1,89 @@ + + + + + diff --git a/src/layout/components/TagsView/index.vue b/src/layout/components/TagsView/index.vue new file mode 100644 index 000000000..46141c9f6 --- /dev/null +++ b/src/layout/components/TagsView/index.vue @@ -0,0 +1,294 @@ + + + + + + + diff --git a/src/main.js b/src/main.js index 01cba2f62..87ce04440 100644 --- a/src/main.js +++ b/src/main.js @@ -11,6 +11,7 @@ import '@/styles/index.scss' // global css import App from './App' import store from './store' import router from './router' +import i18n from './i18n/i18n' import '@/icons' // icon import '@/permission' // permission control @@ -37,6 +38,7 @@ Vue.config.productionTip = false new Vue({ el: '#app', + i18n, router, store, render: h => h(App) diff --git a/src/settings.js b/src/settings.js index ae3c4949a..3842c5c55 100644 --- a/src/settings.js +++ b/src/settings.js @@ -12,5 +12,5 @@ module.exports = { * @type {boolean} true | false * @description Whether show the logo in sidebar */ - sidebarLogo: false + sidebarLogo: true } diff --git a/yarn.lock b/yarn.lock index 4a5a12a95..d53dbedc9 100644 --- a/yarn.lock +++ b/yarn.lock @@ -3341,7 +3341,7 @@ debug@=3.1.0: dependencies: ms "2.0.0" -debug@^3.0.0, debug@^3.1.0, debug@^3.1.1, debug@^3.2.5, debug@^3.2.6: +debug@^3.0.0, debug@^3.1.0, debug@^3.1.1, debug@^3.2.5: version "3.2.6" resolved "https://registry.yarnpkg.com/debug/-/debug-3.2.6.tgz#e83d17de16d8a7efb7717edbe5fb10135eee629b" integrity sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ== @@ -3377,11 +3377,6 @@ deep-equal@^1.0.1: object-keys "^1.1.1" regexp.prototype.flags "^1.2.0" -deep-extend@^0.6.0: - version "0.6.0" - resolved "https://registry.yarnpkg.com/deep-extend/-/deep-extend-0.6.0.tgz#c4fa7c95404a17a9c3e8ca7e1537312b736330ac" - integrity sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA== - deep-is@~0.1.3: version "0.1.3" resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.3.tgz#b369d6fb5dbc13eecf524f91b070feedc357cf34" @@ -3496,11 +3491,6 @@ detect-indent@^4.0.0: dependencies: repeating "^2.0.0" -detect-libc@^1.0.2: - version "1.0.3" - resolved "https://registry.yarnpkg.com/detect-libc/-/detect-libc-1.0.3.tgz#fa137c4bd698edf55cd5cd02ac559f91a4c4ba9b" - integrity sha1-+hN8S9aY7fVc1c0CrFWfkaTEups= - detect-newline@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/detect-newline/-/detect-newline-2.1.0.tgz#f41f1c10be4b00e87b5f13da680759f2c5bfd3e2" @@ -4598,13 +4588,6 @@ fs-extra@^7.0.1: jsonfile "^4.0.0" universalify "^0.1.0" -fs-minipass@^1.2.5: - version "1.2.7" - resolved "https://registry.yarnpkg.com/fs-minipass/-/fs-minipass-1.2.7.tgz#ccff8570841e7fe4265693da88936c55aed7f7c7" - integrity sha512-GWSSJGFy4e9GUeCcbIkED+bgAoFyj7XF1mV8rma3QW4NIqX9Kyx79N/PF61H5udOV3aY1IaMLs6pGbH71nlCTA== - dependencies: - minipass "^2.6.0" - fs-write-stream-atomic@^1.0.8: version "1.0.10" resolved "https://registry.yarnpkg.com/fs-write-stream-atomic/-/fs-write-stream-atomic-1.0.10.tgz#b47df53493ef911df75731e70a9ded0189db40c9" @@ -5139,7 +5122,7 @@ https-browserify@^1.0.0: resolved "https://registry.yarnpkg.com/https-browserify/-/https-browserify-1.0.0.tgz#ec06c10e0a34c0f2faf199f7fd7fc78fffd03c73" integrity sha1-7AbBDgo0wPL68Zn3/X/Hj//QPHM= -iconv-lite@0.4.24, iconv-lite@^0.4.17, iconv-lite@^0.4.24, iconv-lite@^0.4.4: +iconv-lite@0.4.24, iconv-lite@^0.4.17, iconv-lite@^0.4.24: version "0.4.24" resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b" integrity sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA== @@ -5168,13 +5151,6 @@ iferr@^0.1.5: resolved "https://registry.yarnpkg.com/iferr/-/iferr-0.1.5.tgz#c60eed69e6d8fdb6b3104a1fcbca1c192dc5b501" integrity sha1-xg7taebY/bazEEofy8ocGS3FtQE= -ignore-walk@^3.0.1: - version "3.0.3" - resolved "https://registry.yarnpkg.com/ignore-walk/-/ignore-walk-3.0.3.tgz#017e2447184bfeade7c238e4aefdd1e8f95b1e37" - integrity sha512-m7o6xuOaT1aqheYHKf8W6J5pYH85ZI9w077erOzLje3JsB1gkafkAhHHY19dqjulgIZHFm32Cp5uNZgcQqdJKw== - dependencies: - minimatch "^3.0.4" - ignore@^3.3.3, ignore@^3.3.5: version "3.3.10" resolved "https://registry.yarnpkg.com/ignore/-/ignore-3.3.10.tgz#0a97fb876986e8081c631160f8f9f389157f0043" @@ -5286,7 +5262,7 @@ inherits@2.0.3: resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de" integrity sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4= -ini@^1.3.4, ini@~1.3.0: +ini@^1.3.4: version "1.3.5" resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.5.tgz#eee25f56db1c9ec6085e0c22778083f596abf927" integrity sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw== @@ -6937,21 +6913,6 @@ minimist@~0.0.1: resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.10.tgz#de3f98543dbf96082be48ad1a0c7cda836301dcf" integrity sha1-3j+YVD2/lggr5IrRoMfNqDYwHc8= -minipass@^2.6.0, minipass@^2.8.6, minipass@^2.9.0: - version "2.9.0" - resolved "https://registry.yarnpkg.com/minipass/-/minipass-2.9.0.tgz#e713762e7d3e32fed803115cf93e04bca9fcc9a6" - integrity sha512-wxfUjg9WebH+CUDX/CdbRlh5SmfZiy/hpkxaRI16Y9W56Pa75sWgd/rvFilSgrauD9NyFymP/+JFV3KwzIsJeg== - dependencies: - safe-buffer "^5.1.2" - yallist "^3.0.0" - -minizlib@^1.2.1: - version "1.3.3" - resolved "https://registry.yarnpkg.com/minizlib/-/minizlib-1.3.3.tgz#2290de96818a34c29551c8a8d301216bd65a861d" - integrity sha512-6ZYMOEnmVsdCeTJVE0W9ZD+pVnE8h9Hma/iOwwRDsdQoePpoX56/8B6z3P9VNwppJuBKNRuFDRNRqRWexT9G9Q== - dependencies: - minipass "^2.9.0" - mississippi@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/mississippi/-/mississippi-2.0.0.tgz#3442a508fafc28500486feea99409676e4ee5a6f" @@ -7090,15 +7051,6 @@ natural-compare@^1.4.0: resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7" integrity sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc= -needle@^2.2.1: - version "2.3.3" - resolved "https://registry.yarnpkg.com/needle/-/needle-2.3.3.tgz#a041ad1d04a871b0ebb666f40baaf1fb47867117" - integrity sha512-EkY0GeSq87rWp1hoq/sH/wnTWgFVhYlnIkbJ0YJFfRgEFlz2RraCjBpFQ+vrEgEdp0ThfyHADmkChEhcb7PKyw== - dependencies: - debug "^3.2.6" - iconv-lite "^0.4.4" - sax "^1.2.4" - negotiator@0.6.2: version "0.6.2" resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.2.tgz#feacf7ccf525a77ae9634436a64883ffeca346fb" @@ -7211,22 +7163,6 @@ node-notifier@^5.2.1: shellwords "^0.1.1" which "^1.3.0" -node-pre-gyp@*: - version "0.14.0" - resolved "https://registry.yarnpkg.com/node-pre-gyp/-/node-pre-gyp-0.14.0.tgz#9a0596533b877289bcad4e143982ca3d904ddc83" - integrity sha512-+CvDC7ZttU/sSt9rFjix/P05iS43qHCOOGzcr3Ry99bXG7VX953+vFyEuph/tfqoYu8dttBkE86JSKBO2OzcxA== - dependencies: - detect-libc "^1.0.2" - mkdirp "^0.5.1" - needle "^2.2.1" - nopt "^4.0.1" - npm-packlist "^1.1.6" - npmlog "^4.0.2" - rc "^1.2.7" - rimraf "^2.6.1" - semver "^5.3.0" - tar "^4.4.2" - node-releases@^1.1.52: version "1.1.52" resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-1.1.52.tgz#bcffee3e0a758e92e44ecfaecd0a47554b0bcba9" @@ -7264,7 +7200,7 @@ node-sass@^4.9.0: dependencies: abbrev "1" -nopt@^4.0.1, nopt@~4.0.1: +nopt@~4.0.1: version "4.0.3" resolved "https://registry.yarnpkg.com/nopt/-/nopt-4.0.3.tgz#a375cad9d02fd921278d954c2254d5aa57e15e48" integrity sha512-CvaGwVMztSMJLOeXPrez7fyfObdZqNUK1cPAEzLHrTybIua9pMdmmPR5YwtfNftIOMv3DPUhFaxsZMNTQO20Kg== @@ -7328,27 +7264,6 @@ normalize.css@7.0.0: resolved "https://registry.yarnpkg.com/normalize.css/-/normalize.css-7.0.0.tgz#abfb1dd82470674e0322b53ceb1aaf412938e4bf" integrity sha1-q/sd2CRwZ04DIrU86xqvQSk45L8= -npm-bundled@^1.0.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/npm-bundled/-/npm-bundled-1.1.1.tgz#1edd570865a94cdb1bc8220775e29466c9fb234b" - integrity sha512-gqkfgGePhTpAEgUsGEgcq1rqPXA+tv/aVBlgEzfXwA1yiUJF7xtEt3CtVwOjNYQOVknDk0F20w58Fnm3EtG0fA== - dependencies: - npm-normalize-package-bin "^1.0.1" - -npm-normalize-package-bin@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/npm-normalize-package-bin/-/npm-normalize-package-bin-1.0.1.tgz#6e79a41f23fd235c0623218228da7d9c23b8f6e2" - integrity sha512-EPfafl6JL5/rU+ot6P3gRSCpPDW5VmIzX959Ob1+ySFUuuYHWHekXpwdUZcKP5C+DS4GEtdJluwBjnsNDl+fSA== - -npm-packlist@^1.1.6: - version "1.4.8" - resolved "https://registry.yarnpkg.com/npm-packlist/-/npm-packlist-1.4.8.tgz#56ee6cc135b9f98ad3d51c1c95da22bbb9b2ef3e" - integrity sha512-5+AZgwru5IevF5ZdnFglB5wNlHG1AOOuw28WhUq8/8emhBmLv6jX5by4WJCh7lW0uSYZYS6DXqIsyZVIXRZU9A== - dependencies: - ignore-walk "^3.0.1" - npm-bundled "^1.0.1" - npm-normalize-package-bin "^1.0.1" - npm-run-path@^2.0.0: version "2.0.2" resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-2.0.2.tgz#35a9232dfa35d7067b4cb2ddf2357b1871536c5f" @@ -7356,7 +7271,7 @@ npm-run-path@^2.0.0: dependencies: path-key "^2.0.0" -"npmlog@0 || 1 || 2 || 3 || 4", npmlog@^4.0.0, npmlog@^4.0.2: +"npmlog@0 || 1 || 2 || 3 || 4", npmlog@^4.0.0: version "4.1.2" resolved "https://registry.yarnpkg.com/npmlog/-/npmlog-4.1.2.tgz#08a7f2a8bf734604779a9efa4ad5cc717abb954b" integrity sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg== @@ -8607,16 +8522,6 @@ raw-loader@~0.5.1: resolved "https://registry.yarnpkg.com/raw-loader/-/raw-loader-0.5.1.tgz#0c3d0beaed8a01c966d9787bf778281252a979aa" integrity sha1-DD0L6u2KAclm2Xh793goElKpeao= -rc@^1.2.7: - version "1.2.8" - resolved "https://registry.yarnpkg.com/rc/-/rc-1.2.8.tgz#cd924bf5200a075b83c188cd6b9e211b7fc0d3ed" - integrity sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw== - dependencies: - deep-extend "^0.6.0" - ini "~1.3.0" - minimist "^1.2.0" - strip-json-comments "~2.0.1" - read-pkg-up@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-1.0.1.tgz#9d63c13276c065918d57f002a57f40a1b643fb02" @@ -9911,19 +9816,6 @@ tar@^2.0.0: fstream "^1.0.12" inherits "2" -tar@^4.4.2: - version "4.4.13" - resolved "https://registry.yarnpkg.com/tar/-/tar-4.4.13.tgz#43b364bc52888d555298637b10d60790254ab525" - integrity sha512-w2VwSrBoHa5BsSyH+KxEqeQBAllHhccyMFVHtGtdMpF4W7IRWfZjFiQceJPChOeTsSDVUpER2T8FA93pr0L+QA== - dependencies: - chownr "^1.1.1" - fs-minipass "^1.2.5" - minipass "^2.8.6" - minizlib "^1.2.1" - mkdirp "^0.5.0" - safe-buffer "^5.1.2" - yallist "^3.0.3" - terser-webpack-plugin@^1.1.0, terser-webpack-plugin@^1.2.3, terser-webpack-plugin@^1.4.3: version "1.4.3" resolved "https://registry.yarnpkg.com/terser-webpack-plugin/-/terser-webpack-plugin-1.4.3.tgz#5ecaf2dbdc5fb99745fd06791f46fc9ddb1c9a7c" @@ -10447,6 +10339,11 @@ vue-hot-reload-api@^2.3.0: resolved "https://registry.yarnpkg.com/vue-hot-reload-api/-/vue-hot-reload-api-2.3.4.tgz#532955cc1eb208a3d990b3a9f9a70574657e08f2" integrity sha512-BXq3jwIagosjgNVae6tkHzzIk6a8MHFtzAdwhnV5VlvPTFxDCvIttgSiHWjdGoTJvXtmRu5HacExfdarRcFhog== +vue-i18n@^8.15.5: + version "8.15.5" + resolved "https://registry.yarnpkg.com/vue-i18n/-/vue-i18n-8.15.5.tgz#e39e4724c88ec38ef72217de325e8b10a35718cf" + integrity sha512-lIej02+w8lP0k1PEN1xtXqKpQ1hDh17zvDF+7Oc2qJi+cTMDlfPM771w4euVaHO67AxEz4WL9MIgkyn3tkeCtQ== + vue-jest@^3.0.4: version "3.0.5" resolved "https://registry.yarnpkg.com/vue-jest/-/vue-jest-3.0.5.tgz#d6f124b542dcbff207bf9296c19413f4c40b70c9" @@ -10888,7 +10785,7 @@ yallist@^2.1.2: resolved "https://registry.yarnpkg.com/yallist/-/yallist-2.1.2.tgz#1c11f9218f076089a47dd512f93c6699a6a81d52" integrity sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI= -yallist@^3.0.0, yallist@^3.0.2, yallist@^3.0.3: +yallist@^3.0.2: version "3.1.1" resolved "https://registry.yarnpkg.com/yallist/-/yallist-3.1.1.tgz#dbb7daf9bfd8bac9ab45ebf602b8cbad0d5d08fd" integrity sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==