diff --git a/.eslintrc.js b/.eslintrc.js index 0760a63..5a6c144 100644 --- a/.eslintrc.js +++ b/.eslintrc.js @@ -3,24 +3,24 @@ module.exports = { env: { node: true, }, - extends: ["plugin:vue/recommended", "@vue/prettier"], + extends: ['plugin:vue/recommended', '@vue/prettier'], rules: { - "no-console": process.env.NODE_ENV === "production" ? "warn" : "off", - "no-debugger": process.env.NODE_ENV === "production" ? "warn" : "off", - "vue/no-v-html": "off", + 'no-console': process.env.NODE_ENV === 'production' ? 'warn' : 'off', + 'no-debugger': process.env.NODE_ENV === 'production' ? 'warn' : 'off', + 'vue/no-v-html': 'off', }, parserOptions: { - parser: "babel-eslint", + parser: 'babel-eslint', }, overrides: [ { files: [ - "**/__tests__/*.{j,t}s?(x)", - "**/tests/unit/**/*.spec.{j,t}s?(x)", + '**/__tests__/*.{j,t}s?(x)', + '**/tests/unit/**/*.spec.{j,t}s?(x)', ], env: { jest: true, }, }, ], -}; +} diff --git a/.stylelintrc.js b/.stylelintrc.js index f521455..591e391 100644 --- a/.stylelintrc.js +++ b/.stylelintrc.js @@ -1,3 +1,3 @@ module.exports = { - extends: ["stylelint-config-recess-order", "stylelint-config-prettier"], -}; + extends: ['stylelint-config-recess-order', 'stylelint-config-prettier'], +} diff --git a/babel.config.js b/babel.config.js index 162a3ea..c1b783e 100644 --- a/babel.config.js +++ b/babel.config.js @@ -1,3 +1,3 @@ module.exports = { - presets: ["@vue/cli-plugin-babel/preset"], -}; + presets: ['@vue/cli-plugin-babel/preset'], +} diff --git a/mock/controller/ad.js b/mock/controller/ad.js index de7f395..9e02e55 100644 --- a/mock/controller/ad.js +++ b/mock/controller/ad.js @@ -1,23 +1,23 @@ const data = [ { - title: "vue-admin-beautiful-pro 1.7版本已发布,点我提前体验", - url: "https://chu1204505056.gitee.io/vue-admin-beautiful-pro/#/index", + title: 'vue-admin-beautiful-pro 1.7版本已发布,点我提前体验', + url: 'https://chu1204505056.gitee.io/vue-admin-beautiful-pro/#/index', }, { - title: "vue-admin-beautiful(antdv) vue3.0版本已发布,点我提前体验", - url: "https://chu1204505056.gitee.io/vue-admin-beautiful-mini/#/index", + title: 'vue-admin-beautiful(antdv) vue3.0版本已发布,点我提前体验', + url: 'https://chu1204505056.gitee.io/vue-admin-beautiful-mini/#/index', }, -]; +] module.exports = [ { - url: "/ad/getList", - type: "get", + url: '/ad/getList', + type: 'get', response() { return { code: 200, - msg: "success", + msg: 'success', data, - }; + } }, }, -]; +] diff --git a/mock/controller/changeLog.js b/mock/controller/changeLog.js index 96e7416..97d7832 100644 --- a/mock/controller/changeLog.js +++ b/mock/controller/changeLog.js @@ -1,194 +1,194 @@ const data = [ { - content: "在github上获得了第一个star,感恩一位名叫Bequiet2014的github用户", - timestamp: "2020-03-23", + content: '在github上获得了第一个star,感恩一位名叫Bequiet2014的github用户', + timestamp: '2020-03-23', }, { - content: "增加更换主题功能", - timestamp: "2020-04-10", + content: '增加更换主题功能', + timestamp: '2020-04-10', }, { - content: "大幅精简代码", - timestamp: "2020-04-14", + content: '大幅精简代码', + timestamp: '2020-04-14', }, { - content: "修复群友反馈的bug", - timestamp: "2020-04-16", + content: '修复群友反馈的bug', + timestamp: '2020-04-16', }, { - content: "剔除maptalks", - timestamp: "2020-04-17", + content: '剔除maptalks', + timestamp: '2020-04-17', }, { content: - "换行符统一修改为lf 支持苹果 linux windows协同开发 强制开启最严格eslint规则 不要哭 严格是有好处的", - timestamp: "2020-04-17", + '换行符统一修改为lf 支持苹果 linux windows协同开发 强制开启最严格eslint规则 不要哭 严格是有好处的', + timestamp: '2020-04-17', }, { - content: "彻底完成手机端适配,记录这一天熬夜到了晚上三点", - timestamp: "2020-04-18", + content: '彻底完成手机端适配,记录这一天熬夜到了晚上三点', + timestamp: '2020-04-18', }, { content: - "删除babel-polyfill 提高打包速度 减少压缩体积(放弃ie是这个项目做出的最伟大的决定)", - timestamp: "2020-04-18", + '删除babel-polyfill 提高打包速度 减少压缩体积(放弃ie是这个项目做出的最伟大的决定)', + timestamp: '2020-04-18', }, { - content: "源码精简至800k", - timestamp: "2020-04-19", + content: '源码精简至800k', + timestamp: '2020-04-19', }, { - content: "添加视频播放器组件", - timestamp: "2020-04-20", + content: '添加视频播放器组件', + timestamp: '2020-04-20', }, { - content: "修复路由懒加载 完善主题配色", - timestamp: "2020-04-22", + content: '修复路由懒加载 完善主题配色', + timestamp: '2020-04-22', }, { - content: "修复全局axios拦截 加快动画展示效果 修改登录页样式", - timestamp: "2020-04-24", + content: '修复全局axios拦截 加快动画展示效果 修改登录页样式', + timestamp: '2020-04-24', }, { - content: "简化权限与登录逻辑 更新mockServer", - timestamp: "2020-04-25", + content: '简化权限与登录逻辑 更新mockServer', + timestamp: '2020-04-25', }, { - content: "优化登录退出逻辑 代码更清晰 退出不再重载网页 改为重载路由形式", - timestamp: "2020-04-26", + content: '优化登录退出逻辑 代码更清晰 退出不再重载网页 改为重载路由形式', + timestamp: '2020-04-26', }, { - content: "无端的指责只会让我更加努力 修复sidebar 简化permission", - timestamp: "2020-04-28", + content: '无端的指责只会让我更加努力 修复sidebar 简化permission', + timestamp: '2020-04-28', }, { - content: "又是一个深夜 实现了表格增删改查的一键生成", - timestamp: "2020-04-30", + content: '又是一个深夜 实现了表格增删改查的一键生成', + timestamp: '2020-04-30', }, { - content: "大幅优化tagsview标签动画", - timestamp: "2020-05-02", + content: '大幅优化tagsview标签动画', + timestamp: '2020-05-02', }, { - content: "三种图标组件实现mock模拟分页", - timestamp: "2020-05-03", + content: '三种图标组件实现mock模拟分页', + timestamp: '2020-05-03', }, { - content: "添加了markdown编辑器组件", - timestamp: "2020-05-04", + content: '添加了markdown编辑器组件', + timestamp: '2020-05-04', }, { - content: "添加stylelint-plus自动规整排序样式", - timestamp: "2020-05-06", + content: '添加stylelint-plus自动规整排序样式', + timestamp: '2020-05-06', }, { - content: "添加商城模板", - timestamp: "2020-05-12", + content: '添加商城模板', + timestamp: '2020-05-12', }, { - content: "github标星超过1000 感恩", - timestamp: "2020-05-13", + content: 'github标星超过1000 感恩', + timestamp: '2020-05-13', }, { - content: "添加验证码组件", - timestamp: "2020-05-14", + content: '添加验证码组件', + timestamp: '2020-05-14', }, { - content: "修复横向菜单bug", - timestamp: "2020-05-16", + content: '修复横向菜单bug', + timestamp: '2020-05-16', }, { - content: "又被人骂了 挺好的 让我下定决心重写了tabsBar", - timestamp: "2020-05-20", + content: '又被人骂了 挺好的 让我下定决心重写了tabsBar', + timestamp: '2020-05-20', }, { - content: "仿ant-design 添加雪花屏", - timestamp: "2020-05-26", + content: '仿ant-design 添加雪花屏', + timestamp: '2020-05-26', }, { - content: "添加人员管理模块", - timestamp: "2020-06-02", + content: '添加人员管理模块', + timestamp: '2020-06-02', }, { - content: "github标星超过2000 感恩", - timestamp: "2020-06-03", + content: 'github标星超过2000 感恩', + timestamp: '2020-06-03', }, { - content: "添加炫酷地图组件", - timestamp: "2020-06-11", + content: '添加炫酷地图组件', + timestamp: '2020-06-11', }, { - content: "抽离更多公共配置,框架使用更顺手", - timestamp: "2020-06-19", + content: '抽离更多公共配置,框架使用更顺手', + timestamp: '2020-06-19', }, { - content: "彻底完成了tabsBar多标签页的重构", - timestamp: "2020-06-22", + content: '彻底完成了tabsBar多标签页的重构', + timestamp: '2020-06-22', }, { - content: "感恩github标星过3.0K 祝大家端午节快乐", - timestamp: "2020-06-25", + content: '感恩github标星过3.0K 祝大家端午节快乐', + timestamp: '2020-06-25', }, { - content: "彻底重构了SideBar与TopBar 大幅精简dom渲染逻辑 全球首发", - timestamp: "2020-06-25", + content: '彻底重构了SideBar与TopBar 大幅精简dom渲染逻辑 全球首发', + timestamp: '2020-06-25', }, { - content: "添加菜单管理", - timestamp: "2020-07-7", + content: '添加菜单管理', + timestamp: '2020-07-7', }, { - content: "首次采用sass-loader 9.0写法,感谢github用户 shaonialife", - timestamp: "2020-07-7", + content: '首次采用sass-loader 9.0写法,感谢github用户 shaonialife', + timestamp: '2020-07-7', }, { - content: "添加vue-amap组件", - timestamp: "2020-07-11", + content: '添加vue-amap组件', + timestamp: '2020-07-11', }, { - content: "修改zx-layouts引入方式", - timestamp: "2020-07-15", + content: '修改zx-layouts引入方式', + timestamp: '2020-07-15', }, { content: - "记录这一天vue-admin-beautiful在插件市场、百度已花费超过1万元广告费用,希望一切都值得", - timestamp: "2020-07-18", + '记录这一天vue-admin-beautiful在插件市场、百度已花费超过1万元广告费用,希望一切都值得', + timestamp: '2020-07-18', }, { - content: "主题配置添加绿荫草场、荣耀典藏、暗黑之子模式", - timestamp: "2020-07-18", + content: '主题配置添加绿荫草场、荣耀典藏、暗黑之子模式', + timestamp: '2020-07-18', }, { - content: "全局axios请求全面支持Status Code拦截处理", - timestamp: "2020-07-29", + content: '全局axios请求全面支持Status Code拦截处理', + timestamp: '2020-07-29', }, { - content: "重构全局loadding加载代码", - timestamp: "2020-07-31", + content: '重构全局loadding加载代码', + timestamp: '2020-07-31', }, { - content: "升级stylelint自动排序功能", - timestamp: "2020-08-25", + content: '升级stylelint自动排序功能', + timestamp: '2020-08-25', }, { - content: "修复视频播放器组件重载路由失效的bug", - timestamp: "2020-09-03", + content: '修复视频播放器组件重载路由失效的bug', + timestamp: '2020-09-03', }, { - content: "修复极个别情况image-loader打包报错", - timestamp: "2020-09-18", + content: '修复极个别情况image-loader打包报错', + timestamp: '2020-09-18', }, { - content: "全网首个基于vue3.0开发的admin框架已发布,具体请访问github", - timestamp: "2020-09-22", + content: '全网首个基于vue3.0开发的admin框架已发布,具体请访问github', + timestamp: '2020-09-22', }, { - content: "完善路由后端渲染方案,弃用之前写法", - timestamp: "2020-09-30", + content: '完善路由后端渲染方案,弃用之前写法', + timestamp: '2020-09-30', }, { - content: "大版本迭代,请关注github tag", - timestamp: "2020-09-30", + content: '大版本迭代,请关注github tag', + timestamp: '2020-09-30', }, /* { content: @@ -196,22 +196,22 @@ const data = [ timestamp: "2020-10-01", }, */ { - content: "凌晨两点,我累了,移除无用组件,精简package", - timestamp: "2020-10-02", + content: '凌晨两点,我累了,移除无用组件,精简package', + timestamp: '2020-10-02', }, -]; +] module.exports = [ { - url: "/changeLog/getList", - type: "post", + url: '/changeLog/getList', + type: 'post', response() { return { code: 200, - msg: "success", + msg: 'success', totalCount: 999, data: data, - }; + } }, }, -]; +] diff --git a/mock/controller/colorfulIcon.js b/mock/controller/colorfulIcon.js index 8f95d18..8d7625f 100644 --- a/mock/controller/colorfulIcon.js +++ b/mock/controller/colorfulIcon.js @@ -1,324 +1,324 @@ const data = [ - "alphabetical_sorting", - "alphabetical_sorting", - "alarm_clock", - "area_chart", - "approval", - "answers", - "approve", - "assistant", - "automotive", - "automatic", - "bad_decision", - "bar_chart", - "bearish", - "biomass", - "biohazard", - "binoculars", - "bookmark", - "briefcase", - "biotech", - "broken_link", - "business", - "bullish", - "business_contact", - "businesswoman", - "cable_release", - "calculator", - "businessman", - "calendar", - "butting_in", - "call_transfer", - "callback", - "camcorder", - "camera", - "camcorder_pro", - "cancel", - "camera_addon", - "camera_identificatio", - "capacitor", - "candle_sticks", - "checkmark", - "circuit", - "charge_battery", - "clear_filters", - "clapperboard", - "clock", - "close_up_mode", - "collaboration", - "cell_phone", - "collapse", - "collect", - "cloth", - "combo_chart", - "comments", - "conference_call", - "compact_camera", - "contacts", - "copyleft", - "copyright", - "crystal_oscillator", - "cursor", - "currency_exchange", - "customer_support", - "dam", - "data_backup", - "data_configuration", - "data_encryption", - "data_protection", - "data_recovery", - "database", - "data_sheet", - "debt", - "decision", - "delete_column", - "delete_database", - "department", - "delete_row", - "deployment", - "dislike", - "disapprove", - "disclaimer", - "display", - "document", - "do_not_insert", - "do_not_mix", - "do_not_inhale", - "donate", - "down", - "doughnut_chart", - "down_left", - "down_right", - "download", - "edit_image", - "electrical_sensor", - "electrical_threshold", - "electricity", - "electro_devices", - "electronics", - "empty_battery", - "empty_filter", - "empty_trash", - "end_call", - "engineering", - "entering_heaven_aliv", - "expand", - "export", - "expired", - "factory", - "factory_breakdown", - "external", - "faq", - "feed_in", - "file", - "feedback", - "film", - "filled_filter", - "filing_cabinet", - "film_reel", - "flash_auto", - "fine_print", - "flash_off", - "flash_on", - "flow_chart", - "folder", - "frame", - "full_battery", - "full_trash", - "gallery", - "generic_sorting_asc", - "generic_sorting_desc", - "genealogy", - "globe", - "good_decision", - "headset", - "grid", - "graduation_cap", - "heat_map", - "high_priority", - "high_battery", - "image_file", - "home", - "idea", - "import", - "in_transit", - "integrated_webcam", - "inspection", - "invite", - "internal", - "ipad", - "info", - "iphone", - "kindle", - "key", - "landscape", - "left", - "left_down", - "left_up", - "leave", - "like_placeholder", - "light_at_the_end_of_", - "library", - "line_chart", - "link", - "like", - "lock", - "list", - "lock_landscape", - "low_battery", - "lock_portrait", - "low_priority", - "make_decision", - "medium_priority", - "manager", - "menu", - "middle_battery", - "minus", - "missed_call", - "mind_map", - "mms", - "multiple_cameras", - "money_transfer", - "music", - "multiple_devices", - "multiple_smartphones", - "multiple_inputs", - "negative_dynamic", - "neutral_decision", - "night_landscape", - "news", - "neutral_trading", - "night_portrait", - "no_idea", - "next", - "no_video", - "nook", - "ok", - "org_unit", - "opened_folder", - "old_time_camera", - "online_support", - "organization", - "package", - "paid", - "parallel_tasks", - "overtime", - "panorama", - "phone", - "phone_android", - "photo_reel", - "pie_chart", - "picture", - "planner", - "plus", - "podium_with_audience", - "podium_without_speak", - "podium_with_speaker", - "previous", - "portrait_mode", - "positive_dynamic", - "privacy", - "process", - "puzzle", - "questions", - "print", - "radar_plot", - "rating", - "ratings", - "reading", - "redo", - "reading_ebook", - "refresh", - "registered_trademark", - "right", - "reuse", - "remove_image", - "right_down", - "right_up", - "rotate_to_portrait", - "rules", - "rotate_camera", - "rotate_to_landscape", - "ruler", - "scatter_plot", - "search", - "safe", - "self_service_kiosk", - "selfie", - "serial_tasks", - "sales_performance", - "settings", - "services", - "share", - "shipped", - "sim_card", - "shop", - "service_mark", - "sim_card_chip", - "signature", - "smartphone_tablet", - "sound_recording_copy", - "sms", - "speaker", - "slr_back_side", - "start", - "stack_of_photos", - "statistics", - "sports_mode", - "support", - "synchronize", - "switch_camera", - "survey", - "tablet_android", - "template", - "trademark", - "todo_list", - "touchscreen_smartpho", - "timeline", - "tree_structure", - "undo", - "up_left", - "two_smartphones", - "unlock", - "up", - "up_right", - "upload", - "video_call", - "video_file", - "view_details", - "video_projector", - "vip", - "voice_presentation", - "webcam", - "voicemail", - "workflow", - "about", - "accept_database", - "add_image", - "add_column", - "add_database", - "add_row", -]; + 'alphabetical_sorting', + 'alphabetical_sorting', + 'alarm_clock', + 'area_chart', + 'approval', + 'answers', + 'approve', + 'assistant', + 'automotive', + 'automatic', + 'bad_decision', + 'bar_chart', + 'bearish', + 'biomass', + 'biohazard', + 'binoculars', + 'bookmark', + 'briefcase', + 'biotech', + 'broken_link', + 'business', + 'bullish', + 'business_contact', + 'businesswoman', + 'cable_release', + 'calculator', + 'businessman', + 'calendar', + 'butting_in', + 'call_transfer', + 'callback', + 'camcorder', + 'camera', + 'camcorder_pro', + 'cancel', + 'camera_addon', + 'camera_identificatio', + 'capacitor', + 'candle_sticks', + 'checkmark', + 'circuit', + 'charge_battery', + 'clear_filters', + 'clapperboard', + 'clock', + 'close_up_mode', + 'collaboration', + 'cell_phone', + 'collapse', + 'collect', + 'cloth', + 'combo_chart', + 'comments', + 'conference_call', + 'compact_camera', + 'contacts', + 'copyleft', + 'copyright', + 'crystal_oscillator', + 'cursor', + 'currency_exchange', + 'customer_support', + 'dam', + 'data_backup', + 'data_configuration', + 'data_encryption', + 'data_protection', + 'data_recovery', + 'database', + 'data_sheet', + 'debt', + 'decision', + 'delete_column', + 'delete_database', + 'department', + 'delete_row', + 'deployment', + 'dislike', + 'disapprove', + 'disclaimer', + 'display', + 'document', + 'do_not_insert', + 'do_not_mix', + 'do_not_inhale', + 'donate', + 'down', + 'doughnut_chart', + 'down_left', + 'down_right', + 'download', + 'edit_image', + 'electrical_sensor', + 'electrical_threshold', + 'electricity', + 'electro_devices', + 'electronics', + 'empty_battery', + 'empty_filter', + 'empty_trash', + 'end_call', + 'engineering', + 'entering_heaven_aliv', + 'expand', + 'export', + 'expired', + 'factory', + 'factory_breakdown', + 'external', + 'faq', + 'feed_in', + 'file', + 'feedback', + 'film', + 'filled_filter', + 'filing_cabinet', + 'film_reel', + 'flash_auto', + 'fine_print', + 'flash_off', + 'flash_on', + 'flow_chart', + 'folder', + 'frame', + 'full_battery', + 'full_trash', + 'gallery', + 'generic_sorting_asc', + 'generic_sorting_desc', + 'genealogy', + 'globe', + 'good_decision', + 'headset', + 'grid', + 'graduation_cap', + 'heat_map', + 'high_priority', + 'high_battery', + 'image_file', + 'home', + 'idea', + 'import', + 'in_transit', + 'integrated_webcam', + 'inspection', + 'invite', + 'internal', + 'ipad', + 'info', + 'iphone', + 'kindle', + 'key', + 'landscape', + 'left', + 'left_down', + 'left_up', + 'leave', + 'like_placeholder', + 'light_at_the_end_of_', + 'library', + 'line_chart', + 'link', + 'like', + 'lock', + 'list', + 'lock_landscape', + 'low_battery', + 'lock_portrait', + 'low_priority', + 'make_decision', + 'medium_priority', + 'manager', + 'menu', + 'middle_battery', + 'minus', + 'missed_call', + 'mind_map', + 'mms', + 'multiple_cameras', + 'money_transfer', + 'music', + 'multiple_devices', + 'multiple_smartphones', + 'multiple_inputs', + 'negative_dynamic', + 'neutral_decision', + 'night_landscape', + 'news', + 'neutral_trading', + 'night_portrait', + 'no_idea', + 'next', + 'no_video', + 'nook', + 'ok', + 'org_unit', + 'opened_folder', + 'old_time_camera', + 'online_support', + 'organization', + 'package', + 'paid', + 'parallel_tasks', + 'overtime', + 'panorama', + 'phone', + 'phone_android', + 'photo_reel', + 'pie_chart', + 'picture', + 'planner', + 'plus', + 'podium_with_audience', + 'podium_without_speak', + 'podium_with_speaker', + 'previous', + 'portrait_mode', + 'positive_dynamic', + 'privacy', + 'process', + 'puzzle', + 'questions', + 'print', + 'radar_plot', + 'rating', + 'ratings', + 'reading', + 'redo', + 'reading_ebook', + 'refresh', + 'registered_trademark', + 'right', + 'reuse', + 'remove_image', + 'right_down', + 'right_up', + 'rotate_to_portrait', + 'rules', + 'rotate_camera', + 'rotate_to_landscape', + 'ruler', + 'scatter_plot', + 'search', + 'safe', + 'self_service_kiosk', + 'selfie', + 'serial_tasks', + 'sales_performance', + 'settings', + 'services', + 'share', + 'shipped', + 'sim_card', + 'shop', + 'service_mark', + 'sim_card_chip', + 'signature', + 'smartphone_tablet', + 'sound_recording_copy', + 'sms', + 'speaker', + 'slr_back_side', + 'start', + 'stack_of_photos', + 'statistics', + 'sports_mode', + 'support', + 'synchronize', + 'switch_camera', + 'survey', + 'tablet_android', + 'template', + 'trademark', + 'todo_list', + 'touchscreen_smartpho', + 'timeline', + 'tree_structure', + 'undo', + 'up_left', + 'two_smartphones', + 'unlock', + 'up', + 'up_right', + 'upload', + 'video_call', + 'video_file', + 'view_details', + 'video_projector', + 'vip', + 'voice_presentation', + 'webcam', + 'voicemail', + 'workflow', + 'about', + 'accept_database', + 'add_image', + 'add_column', + 'add_database', + 'add_row', +] module.exports = [ { - url: "/colorfulIcon/getList", - type: "post", + url: '/colorfulIcon/getList', + type: 'post', response(config) { - const { title, pageNo = 1, pageSize = 72 } = config.body; + const { title, pageNo = 1, pageSize = 72 } = config.body let mockList = data.filter((item) => { - if (title && item.indexOf(title) < 0) return false; - return true; - }); + if (title && item.indexOf(title) < 0) return false + return true + }) const pageList = mockList.filter( (item, index) => index < pageSize * pageNo && index >= pageSize * (pageNo - 1) - ); + ) return { code: 200, - msg: "success", + msg: 'success', totalCount: mockList.length, data: pageList, - }; + } }, }, -]; +] diff --git a/mock/controller/goodsList.js b/mock/controller/goodsList.js index 9f2420d..82176a3 100644 --- a/mock/controller/goodsList.js +++ b/mock/controller/goodsList.js @@ -1,43 +1,43 @@ -const { mock } = require("mockjs"); +const { mock } = require('mockjs') -const List = []; -const count = 999; -let num = 0; +const List = [] +const count = 999 +let num = 0 for (let i = 0; i < count; i++) { List.push( mock({ - uuid: "@uuid", + uuid: '@uuid', image: `https://picsum.photos/300/600?random=${num++}`, - title: "@ctitle", - description: "@csentence", - link: "https://www.baidu.com", - price: "@integer(100, 500)", - "status|1": [1, 0], - "isRecommend|1": [1, 0], + title: '@ctitle', + description: '@csentence', + link: 'https://www.baidu.com', + price: '@integer(100, 500)', + 'status|1': [1, 0], + 'isRecommend|1': [1, 0], }) - ); + ) } module.exports = [ { - url: "/goodsList/getList", - type: "post", + url: '/goodsList/getList', + type: 'post', response(config) { - const { title = "", pageNo = 1, pageSize = 20 } = config.body; + const { title = '', pageNo = 1, pageSize = 20 } = config.body let mockList = List.filter((item) => { - if (title && item.title.indexOf(title) < 0) return false; - return true; - }); + if (title && item.title.indexOf(title) < 0) return false + return true + }) const pageList = mockList.filter( (item, index) => index < pageSize * pageNo && index >= pageSize * (pageNo - 1) - ); + ) return { code: 200, - msg: "success", + msg: 'success', totalCount: count, data: pageList, - }; + } }, }, -]; +] diff --git a/mock/controller/icon.js b/mock/controller/icon.js index 1679997..365400a 100644 --- a/mock/controller/icon.js +++ b/mock/controller/icon.js @@ -1,985 +1,985 @@ const data = [ - "air-freshener", - "align-center", - "align-justify", - "align-left", - "align-right", - "allergies", - "ambulance", - "american-sign-language-interpreting", - "anchor", - "angle-double-down", - "angle-double-left", - "angle-double-right", - "angle-double-up", - "angle-down", - "angle-left", - "angle-right", - "angle-up", - "angry", - "ankh", - "apple-alt", - "archive", - "archway", - "arrow-alt-circle-down", - "arrow-alt-circle-left", - "arrow-alt-circle-right", - "arrow-alt-circle-up", - "arrow-circle-down", - "arrow-circle-left", - "arrow-circle-right", - "arrow-circle-up", - "arrow-down", - "arrow-left", - "arrow-right", - "arrow-up", - "arrows-alt", - "arrows-alt-h", - "arrows-alt-v", - "assistive-listening-systems", - "asterisk", - "at", - "atlas", - "atom", - "audio-description", - "award", - "baby", - "baby-carriage", - "backspace", - "backward", - "bacon", - "bahai", - "balance-scale", - "balance-scale-left", - "balance-scale-right", - "ban", - "band-aid", - "barcode", - "bars", - "baseball-ball", - "basketball-ball", - "bath", - "battery-empty", - "battery-full", - "battery-half", - "battery-quarter", - "battery-three-quarters", - "bed", - "beer", - "bell", - "bell-slash", - "bezier-curve", - "bible", - "bicycle", - "biking", - "binoculars", - "biohazard", - "birthday-cake", - "blender", - "blender-phone", - "blind", - "blog", - "bold", - "bolt", - "bomb", - "bone", - "bong", - "book", - "book-dead", - "book-medical", - "book-open", - "book-reader", - "bookmark", - "border-all", - "border-none", - "border-style", - "bowling-ball", - "box", - "box-open", - "boxes", - "braille", - "brain", - "bread-slice", - "briefcase", - "briefcase-medical", - "broadcast-tower", - "broom", - "brush", - "bug", - "building", - "bullhorn", - "bullseye", - "burn", - "bus", - "bus-alt", - "business-time", - "calculator", - "calendar", - "calendar-alt", - "calendar-check", - "calendar-day", - "calendar-minus", - "calendar-plus", - "calendar-times", - "calendar-week", - "camera", - "camera-retro", - "campground", - "candy-cane", - "cannabis", - "capsules", - "car", - "car-alt", - "car-battery", - "car-crash", - "car-side", - "caravan", - "caret-down", - "caret-left", - "caret-right", - "caret-square-down", - "caret-square-left", - "caret-square-right", - "caret-square-up", - "caret-up", - "carrot", - "cart-arrow-down", - "cart-plus", - "cash-register", - "cat", - "certificate", - "chair", - "chalkboard", - "chalkboard-teacher", - "charging-station", - "chart-area", - "chart-bar", - "chart-line", - "chart-pie", - "check", - "check-circle", - "check-double", - "check-square", - "cheese", - "chess", - "chess-bishop", - "chess-board", - "chess-king", - "chess-knight", - "chess-pawn", - "chess-queen", - "chess-rook", - "chevron-circle-down", - "chevron-circle-left", - "chevron-circle-right", - "chevron-circle-up", - "chevron-down", - "chevron-left", - "chevron-right", - "chevron-up", - "child", - "church", - "circle", - "circle-notch", - "city", - "clinic-medical", - "clipboard", - "clipboard-check", - "clipboard-list", - "clock", - "clone", - "closed-captioning", - "cloud", - "cloud-download-alt", - "cloud-meatball", - "cloud-moon", - "cloud-moon-rain", - "cloud-rain", - "cloud-showers-heavy", - "cloud-sun", - "cloud-sun-rain", - "cloud-upload-alt", - "cocktail", - "code", - "code-branch", - "coffee", - "cog", - "cogs", - "coins", - "columns", - "comment", - "comment-alt", - "comment-dollar", - "comment-dots", - "comment-medical", - "comment-slash", - "comments", - "comments-dollar", - "compact-disc", - "compass", - "compress", - "compress-alt", - "compress-arrows-alt", - "concierge-bell", - "cookie", - "cookie-bite", - "copy", - "copyright", - "couch", - "credit-card", - "crop", - "crop-alt", - "cross", - "crosshairs", - "crow", - "crown", - "crutch", - "cube", - "cubes", - "cut", - "database", - "deaf", - "democrat", - "desktop", - "dharmachakra", - "diagnoses", - "dice", - "dice-d20", - "dice-d6", - "dice-five", - "dice-four", - "dice-one", - "dice-six", - "dice-three", - "dice-two", - "digital-tachograph", - "directions", - "divide", - "dizzy", - "dna", - "dog", - "dollar-sign", - "dolly", - "dolly-flatbed", - "donate", - "door-closed", - "door-open", - "dot-circle", - "dove", - "download", - "drafting-compass", - "dragon", - "draw-polygon", - "drum", - "drum-steelpan", - "drumstick-bite", - "dumbbell", - "dumpster", - "dumpster-fire", - "dungeon", - "edit", - "egg", - "eject", - "ellipsis-h", - "ellipsis-v", - "envelope", - "envelope-open", - "envelope-open-text", - "envelope-square", - "equals", - "eraser", - "ethernet", - "euro-sign", - "exchange-alt", - "exclamation", - "exclamation-circle", - "exclamation-triangle", - "expand", - "expand-alt", - "expand-arrows-alt", - "external-link-alt", - "external-link-square-alt", - "eye", - "eye-dropper", - "eye-slash", - "fan", - "fast-backward", - "fast-forward", - "fax", - "feather", - "feather-alt", - "female", - "fighter-jet", - "file", - "file-alt", - "file-archive", - "file-audio", - "file-code", - "file-contract", - "file-csv", - "file-download", - "file-excel", - "file-export", - "file-image", - "file-import", - "file-invoice", - "file-invoice-dollar", - "file-medical", - "file-medical-alt", - "file-pdf", - "file-powerpoint", - "file-prescription", - "file-signature", - "file-upload", - "file-video", - "file-word", - "fill", - "fill-drip", - "film", - "filter", - "fingerprint", - "fire", - "fire-alt", - "fire-extinguisher", - "first-aid", - "fish", - "fist-raised", - "flag", - "flag-checkered", - "flag-usa", - "flask", - "flushed", - "folder", - "folder-minus", - "folder-open", - "folder-plus", - "font", - "football-ball", - "forward", - "frog", - "frown", - "frown-open", - "funnel-dollar", - "futbol", - "gamepad", - "gas-pump", - "gavel", - "gem", - "genderless", - "ghost", - "gift", - "gifts", - "glass-cheers", - "glass-martini", - "glass-martini-alt", - "glass-whiskey", - "glasses", - "globe", - "globe-africa", - "globe-americas", - "globe-asia", - "globe-europe", - "golf-ball", - "gopuram", - "graduation-cap", - "greater-than", - "greater-than-equal", - "grimace", - "grin", - "grin-alt", - "grin-beam", - "grin-beam-sweat", - "grin-hearts", - "grin-squint", - "grin-squint-tears", - "grin-stars", - "grin-tears", - "grin-tongue", - "grin-tongue-squint", - "grin-tongue-wink", - "grin-wink", - "grip-horizontal", - "grip-lines", - "grip-lines-vertical", - "grip-vertical", - "guitar", - "h-square", - "hamburger", - "hammer", - "hamsa", - "hand-holding", - "hand-holding-heart", - "hand-holding-usd", - "hand-lizard", - "hand-middle-finger", - "hand-paper", - "hand-peace", - "hand-point-down", - "hand-point-left", - "hand-point-right", - "hand-point-up", - "hand-pointer", - "hand-rock", - "hand-scissors", - "hand-spock", - "hands", - "hands-helping", - "handshake", - "hanukiah", - "hard-hat", - "hashtag", - "hat-cowboy", - "hat-cowboy-side", - "hat-wizard", - "hdd", - "heading", - "headphones", - "headphones-alt", - "headset", - "heart", - "heart-broken", - "heartbeat", - "helicopter", - "highlighter", - "hiking", - "hippo", - "history", - "hockey-puck", - "holly-berry", - "home", - "horse", - "horse-head", - "hospital", - "hospital-alt", - "hospital-symbol", - "hot-tub", - "hotdog", - "hotel", - "hourglass", - "hourglass-end", - "hourglass-half", - "hourglass-start", - "house-damage", - "hryvnia", - "i-cursor", - "ice-cream", - "icicles", - "icons", - "id-badge", - "id-card", - "id-card-alt", - "igloo", - "image", - "images", - "inbox", - "indent", - "industry", - "infinity", - "info", - "info-circle", - "italic", - "jedi", - "joint", - "journal-whills", - "kaaba", - "key", - "keyboard", - "khanda", - "kiss", - "kiss-beam", - "kiss-wink-heart", - "kiwi-bird", - "landmark", - "language", - "laptop", - "laptop-code", - "laptop-medical", - "laugh", - "laugh-beam", - "laugh-squint", - "laugh-wink", - "layer-group", - "leaf", - "lemon", - "less-than", - "less-than-equal", - "level-down-alt", - "level-up-alt", - "life-ring", - "lightbulb", - "link", - "lira-sign", - "list", - "list-alt", - "list-ol", - "list-ul", - "location-arrow", - "lock", - "lock-open", - "long-arrow-alt-down", - "long-arrow-alt-left", - "long-arrow-alt-right", - "long-arrow-alt-up", - "low-vision", - "luggage-cart", - "magic", - "magnet", - "mail-bulk", - "male", - "map", - "map-marked", - "map-marked-alt", - "map-marker", - "map-marker-alt", - "map-pin", - "map-signs", - "marker", - "mars", - "mars-double", - "mars-stroke", - "mars-stroke-h", - "mars-stroke-v", - "mask", - "medal", - "medkit", - "meh", - "meh-blank", - "meh-rolling-eyes", - "memory", - "menorah", - "mercury", - "meteor", - "microchip", - "microphone", - "microphone-alt", - "microphone-alt-slash", - "microphone-slash", - "microscope", - "minus", - "minus-circle", - "minus-square", - "mitten", - "mobile", - "mobile-alt", - "money-bill", - "money-bill-alt", - "money-bill-wave", - "money-bill-wave-alt", - "money-check", - "money-check-alt", - "monument", - "moon", - "mortar-pestle", - "mosque", - "motorcycle", - "mountain", - "mouse", - "mouse-pointer", - "mug-hot", - "music", - "network-wired", - "neuter", - "newspaper", - "not-equal", - "notes-medical", - "object-group", - "object-ungroup", - "oil-can", - "om", - "otter", - "outdent", - "pager", - "paint-brush", - "paint-roller", - "palette", - "pallet", - "paper-plane", - "paperclip", - "parachute-box", - "paragraph", - "parking", - "passport", - "pastafarianism", - "paste", - "pause", - "pause-circle", - "paw", - "peace", - "pen", - "pen-alt", - "pen-fancy", - "pen-nib", - "pen-square", - "pencil-alt", - "pencil-ruler", - "people-carry", - "pepper-hot", - "percent", - "percentage", - "person-booth", - "phone", - "phone-alt", - "phone-slash", - "phone-square", - "phone-square-alt", - "phone-volume", - "photo-video", - "piggy-bank", - "pills", - "pizza-slice", - "place-of-worship", - "plane", - "plane-arrival", - "plane-departure", - "play", - "play-circle", - "plug", - "plus", - "plus-circle", - "plus-square", - "podcast", - "poll", - "poll-h", - "poo", - "poo-storm", - "poop", - "portrait", - "pound-sign", - "power-off", - "pray", - "praying-hands", - "prescription", - "prescription-bottle", - "prescription-bottle-alt", - "print", - "procedures", - "project-diagram", - "puzzle-piece", - "qrcode", - "question", - "question-circle", - "quidditch", - "quote-left", - "quote-right", - "quran", - "radiation", - "radiation-alt", - "rainbow", - "random", - "receipt", - "record-vinyl", - "recycle", - "redo", - "redo-alt", - "registered", - "remove-format", - "reply", - "reply-all", - "republican", - "restroom", - "retweet", - "ribbon", - "ring", - "road", - "robot", - "rocket", - "route", - "rss", - "rss-square", - "ruble-sign", - "ruler", - "ruler-combined", - "ruler-horizontal", - "ruler-vertical", - "running", - "rupee-sign", - "sad-cry", - "sad-tear", - "satellite", - "satellite-dish", - "save", - "school", - "screwdriver", - "scroll", - "sd-card", - "search", - "search-dollar", - "search-location", - "search-minus", - "search-plus", - "seedling", - "server", - "shapes", - "share", - "share-alt", - "share-alt-square", - "share-square", - "shekel-sign", - "shield-alt", - "ship", - "shipping-fast", - "shoe-prints", - "shopping-bag", - "shopping-basket", - "shopping-cart", - "shower", - "shuttle-van", - "sign", - "sign-in-alt", - "sign-language", - "sign-out-alt", - "signal", - "signature", - "sim-card", - "sitemap", - "skating", - "skiing", - "skiing-nordic", - "skull", - "skull-crossbones", - "slash", - "sleigh", - "sliders-h", - "smile", - "smile-beam", - "smile-wink", - "smog", - "smoking", - "smoking-ban", - "sms", - "snowboarding", - "snowflake", - "snowman", - "snowplow", - "socks", - "solar-panel", - "sort", - "sort-alpha-down", - "sort-alpha-down-alt", - "sort-alpha-up", - "sort-alpha-up-alt", - "sort-amount-down", - "sort-amount-down-alt", - "sort-amount-up", - "sort-amount-up-alt", - "sort-down", - "sort-numeric-down", - "sort-numeric-down-alt", - "sort-numeric-up", - "sort-numeric-up-alt", - "sort-up", - "spa", - "space-shuttle", - "spell-check", - "spider", - "spinner", - "splotch", - "spray-can", - "square", - "square-full", - "square-root-alt", - "stamp", - "star", - "star-and-crescent", - "star-half", - "star-half-alt", - "star-of-david", - "star-of-life", - "step-backward", - "step-forward", - "stethoscope", - "sticky-note", - "stop", - "stop-circle", - "stopwatch", - "store", - "store-alt", - "stream", - "street-view", - "strikethrough", - "stroopwafel", - "subscript", - "subway", - "suitcase", - "suitcase-rolling", - "sun", - "superscript", - "surprise", - "swatchbook", - "swimmer", - "swimming-pool", - "synagogue", - "sync", - "sync-alt", - "syringe", - "table", - "table-tennis", - "tablet", - "tablet-alt", - "tablets", - "tachometer-alt", - "tag", - "tags", - "tape", - "tasks", - "taxi", - "teeth", - "teeth-open", - "temperature-high", - "temperature-low", - "tenge", - "terminal", - "text-height", - "text-width", - "th", - "th-large", - "th-list", - "theater-masks", - "thermometer", - "thermometer-empty", - "thermometer-full", - "thermometer-half", - "thermometer-quarter", - "thermometer-three-quarters", - "thumbs-down", - "thumbs-up", - "thumbtack", - "ticket-alt", - "times", - "times-circle", - "tint", - "tint-slash", - "tired", - "toggle-off", - "toggle-on", - "toilet", - "toilet-paper", - "toolbox", - "tools", - "tooth", - "torah", - "torii-gate", - "tractor", - "trademark", - "traffic-light", - "trailer", - "train", - "tram", - "transgender", - "transgender-alt", - "trash", - "trash-alt", - "trash-restore", - "trash-restore-alt", - "tree", - "trophy", - "truck", - "truck-loading", - "truck-monster", - "truck-moving", - "truck-pickup", - "tshirt", - "tty", - "tv", - "umbrella", - "umbrella-beach", - "underline", - "undo", - "undo-alt", - "universal-access", - "university", - "unlink", - "unlock", - "unlock-alt", - "upload", - "user", - "user-alt", - "user-alt-slash", - "user-astronaut", - "user-check", - "user-circle", - "user-clock", - "user-cog", - "user-edit", - "user-friends", - "user-graduate", - "user-injured", - "user-lock", - "user-md", - "user-minus", - "user-ninja", - "user-nurse", - "user-plus", - "user-secret", - "user-shield", - "user-slash", - "user-tag", - "user-tie", - "user-times", - "users", - "users-cog", - "utensil-spoon", - "utensils", - "vector-square", - "venus", - "venus-double", - "venus-mars", - "vial", - "vials", - "video", - "video-slash", - "vihara", - "voicemail", - "volleyball-ball", - "volume-down", - "volume-mute", - "volume-off", - "volume-up", - "vote-yea", - "vr-cardboard", - "walking", - "wallet", - "warehouse", - "water", - "wave-square", - "weight", - "weight-hanging", - "wheelchair", - "wifi", - "wind", - "window-close", - "window-maximize", - "window-minimize", - "window-restore", - "wine-bottle", - "wine-glass", - "wine-glass-alt", - "won-sign", - "wrench", - "x-ray", - "yen-sign", - "yin-yang", -]; + 'air-freshener', + 'align-center', + 'align-justify', + 'align-left', + 'align-right', + 'allergies', + 'ambulance', + 'american-sign-language-interpreting', + 'anchor', + 'angle-double-down', + 'angle-double-left', + 'angle-double-right', + 'angle-double-up', + 'angle-down', + 'angle-left', + 'angle-right', + 'angle-up', + 'angry', + 'ankh', + 'apple-alt', + 'archive', + 'archway', + 'arrow-alt-circle-down', + 'arrow-alt-circle-left', + 'arrow-alt-circle-right', + 'arrow-alt-circle-up', + 'arrow-circle-down', + 'arrow-circle-left', + 'arrow-circle-right', + 'arrow-circle-up', + 'arrow-down', + 'arrow-left', + 'arrow-right', + 'arrow-up', + 'arrows-alt', + 'arrows-alt-h', + 'arrows-alt-v', + 'assistive-listening-systems', + 'asterisk', + 'at', + 'atlas', + 'atom', + 'audio-description', + 'award', + 'baby', + 'baby-carriage', + 'backspace', + 'backward', + 'bacon', + 'bahai', + 'balance-scale', + 'balance-scale-left', + 'balance-scale-right', + 'ban', + 'band-aid', + 'barcode', + 'bars', + 'baseball-ball', + 'basketball-ball', + 'bath', + 'battery-empty', + 'battery-full', + 'battery-half', + 'battery-quarter', + 'battery-three-quarters', + 'bed', + 'beer', + 'bell', + 'bell-slash', + 'bezier-curve', + 'bible', + 'bicycle', + 'biking', + 'binoculars', + 'biohazard', + 'birthday-cake', + 'blender', + 'blender-phone', + 'blind', + 'blog', + 'bold', + 'bolt', + 'bomb', + 'bone', + 'bong', + 'book', + 'book-dead', + 'book-medical', + 'book-open', + 'book-reader', + 'bookmark', + 'border-all', + 'border-none', + 'border-style', + 'bowling-ball', + 'box', + 'box-open', + 'boxes', + 'braille', + 'brain', + 'bread-slice', + 'briefcase', + 'briefcase-medical', + 'broadcast-tower', + 'broom', + 'brush', + 'bug', + 'building', + 'bullhorn', + 'bullseye', + 'burn', + 'bus', + 'bus-alt', + 'business-time', + 'calculator', + 'calendar', + 'calendar-alt', + 'calendar-check', + 'calendar-day', + 'calendar-minus', + 'calendar-plus', + 'calendar-times', + 'calendar-week', + 'camera', + 'camera-retro', + 'campground', + 'candy-cane', + 'cannabis', + 'capsules', + 'car', + 'car-alt', + 'car-battery', + 'car-crash', + 'car-side', + 'caravan', + 'caret-down', + 'caret-left', + 'caret-right', + 'caret-square-down', + 'caret-square-left', + 'caret-square-right', + 'caret-square-up', + 'caret-up', + 'carrot', + 'cart-arrow-down', + 'cart-plus', + 'cash-register', + 'cat', + 'certificate', + 'chair', + 'chalkboard', + 'chalkboard-teacher', + 'charging-station', + 'chart-area', + 'chart-bar', + 'chart-line', + 'chart-pie', + 'check', + 'check-circle', + 'check-double', + 'check-square', + 'cheese', + 'chess', + 'chess-bishop', + 'chess-board', + 'chess-king', + 'chess-knight', + 'chess-pawn', + 'chess-queen', + 'chess-rook', + 'chevron-circle-down', + 'chevron-circle-left', + 'chevron-circle-right', + 'chevron-circle-up', + 'chevron-down', + 'chevron-left', + 'chevron-right', + 'chevron-up', + 'child', + 'church', + 'circle', + 'circle-notch', + 'city', + 'clinic-medical', + 'clipboard', + 'clipboard-check', + 'clipboard-list', + 'clock', + 'clone', + 'closed-captioning', + 'cloud', + 'cloud-download-alt', + 'cloud-meatball', + 'cloud-moon', + 'cloud-moon-rain', + 'cloud-rain', + 'cloud-showers-heavy', + 'cloud-sun', + 'cloud-sun-rain', + 'cloud-upload-alt', + 'cocktail', + 'code', + 'code-branch', + 'coffee', + 'cog', + 'cogs', + 'coins', + 'columns', + 'comment', + 'comment-alt', + 'comment-dollar', + 'comment-dots', + 'comment-medical', + 'comment-slash', + 'comments', + 'comments-dollar', + 'compact-disc', + 'compass', + 'compress', + 'compress-alt', + 'compress-arrows-alt', + 'concierge-bell', + 'cookie', + 'cookie-bite', + 'copy', + 'copyright', + 'couch', + 'credit-card', + 'crop', + 'crop-alt', + 'cross', + 'crosshairs', + 'crow', + 'crown', + 'crutch', + 'cube', + 'cubes', + 'cut', + 'database', + 'deaf', + 'democrat', + 'desktop', + 'dharmachakra', + 'diagnoses', + 'dice', + 'dice-d20', + 'dice-d6', + 'dice-five', + 'dice-four', + 'dice-one', + 'dice-six', + 'dice-three', + 'dice-two', + 'digital-tachograph', + 'directions', + 'divide', + 'dizzy', + 'dna', + 'dog', + 'dollar-sign', + 'dolly', + 'dolly-flatbed', + 'donate', + 'door-closed', + 'door-open', + 'dot-circle', + 'dove', + 'download', + 'drafting-compass', + 'dragon', + 'draw-polygon', + 'drum', + 'drum-steelpan', + 'drumstick-bite', + 'dumbbell', + 'dumpster', + 'dumpster-fire', + 'dungeon', + 'edit', + 'egg', + 'eject', + 'ellipsis-h', + 'ellipsis-v', + 'envelope', + 'envelope-open', + 'envelope-open-text', + 'envelope-square', + 'equals', + 'eraser', + 'ethernet', + 'euro-sign', + 'exchange-alt', + 'exclamation', + 'exclamation-circle', + 'exclamation-triangle', + 'expand', + 'expand-alt', + 'expand-arrows-alt', + 'external-link-alt', + 'external-link-square-alt', + 'eye', + 'eye-dropper', + 'eye-slash', + 'fan', + 'fast-backward', + 'fast-forward', + 'fax', + 'feather', + 'feather-alt', + 'female', + 'fighter-jet', + 'file', + 'file-alt', + 'file-archive', + 'file-audio', + 'file-code', + 'file-contract', + 'file-csv', + 'file-download', + 'file-excel', + 'file-export', + 'file-image', + 'file-import', + 'file-invoice', + 'file-invoice-dollar', + 'file-medical', + 'file-medical-alt', + 'file-pdf', + 'file-powerpoint', + 'file-prescription', + 'file-signature', + 'file-upload', + 'file-video', + 'file-word', + 'fill', + 'fill-drip', + 'film', + 'filter', + 'fingerprint', + 'fire', + 'fire-alt', + 'fire-extinguisher', + 'first-aid', + 'fish', + 'fist-raised', + 'flag', + 'flag-checkered', + 'flag-usa', + 'flask', + 'flushed', + 'folder', + 'folder-minus', + 'folder-open', + 'folder-plus', + 'font', + 'football-ball', + 'forward', + 'frog', + 'frown', + 'frown-open', + 'funnel-dollar', + 'futbol', + 'gamepad', + 'gas-pump', + 'gavel', + 'gem', + 'genderless', + 'ghost', + 'gift', + 'gifts', + 'glass-cheers', + 'glass-martini', + 'glass-martini-alt', + 'glass-whiskey', + 'glasses', + 'globe', + 'globe-africa', + 'globe-americas', + 'globe-asia', + 'globe-europe', + 'golf-ball', + 'gopuram', + 'graduation-cap', + 'greater-than', + 'greater-than-equal', + 'grimace', + 'grin', + 'grin-alt', + 'grin-beam', + 'grin-beam-sweat', + 'grin-hearts', + 'grin-squint', + 'grin-squint-tears', + 'grin-stars', + 'grin-tears', + 'grin-tongue', + 'grin-tongue-squint', + 'grin-tongue-wink', + 'grin-wink', + 'grip-horizontal', + 'grip-lines', + 'grip-lines-vertical', + 'grip-vertical', + 'guitar', + 'h-square', + 'hamburger', + 'hammer', + 'hamsa', + 'hand-holding', + 'hand-holding-heart', + 'hand-holding-usd', + 'hand-lizard', + 'hand-middle-finger', + 'hand-paper', + 'hand-peace', + 'hand-point-down', + 'hand-point-left', + 'hand-point-right', + 'hand-point-up', + 'hand-pointer', + 'hand-rock', + 'hand-scissors', + 'hand-spock', + 'hands', + 'hands-helping', + 'handshake', + 'hanukiah', + 'hard-hat', + 'hashtag', + 'hat-cowboy', + 'hat-cowboy-side', + 'hat-wizard', + 'hdd', + 'heading', + 'headphones', + 'headphones-alt', + 'headset', + 'heart', + 'heart-broken', + 'heartbeat', + 'helicopter', + 'highlighter', + 'hiking', + 'hippo', + 'history', + 'hockey-puck', + 'holly-berry', + 'home', + 'horse', + 'horse-head', + 'hospital', + 'hospital-alt', + 'hospital-symbol', + 'hot-tub', + 'hotdog', + 'hotel', + 'hourglass', + 'hourglass-end', + 'hourglass-half', + 'hourglass-start', + 'house-damage', + 'hryvnia', + 'i-cursor', + 'ice-cream', + 'icicles', + 'icons', + 'id-badge', + 'id-card', + 'id-card-alt', + 'igloo', + 'image', + 'images', + 'inbox', + 'indent', + 'industry', + 'infinity', + 'info', + 'info-circle', + 'italic', + 'jedi', + 'joint', + 'journal-whills', + 'kaaba', + 'key', + 'keyboard', + 'khanda', + 'kiss', + 'kiss-beam', + 'kiss-wink-heart', + 'kiwi-bird', + 'landmark', + 'language', + 'laptop', + 'laptop-code', + 'laptop-medical', + 'laugh', + 'laugh-beam', + 'laugh-squint', + 'laugh-wink', + 'layer-group', + 'leaf', + 'lemon', + 'less-than', + 'less-than-equal', + 'level-down-alt', + 'level-up-alt', + 'life-ring', + 'lightbulb', + 'link', + 'lira-sign', + 'list', + 'list-alt', + 'list-ol', + 'list-ul', + 'location-arrow', + 'lock', + 'lock-open', + 'long-arrow-alt-down', + 'long-arrow-alt-left', + 'long-arrow-alt-right', + 'long-arrow-alt-up', + 'low-vision', + 'luggage-cart', + 'magic', + 'magnet', + 'mail-bulk', + 'male', + 'map', + 'map-marked', + 'map-marked-alt', + 'map-marker', + 'map-marker-alt', + 'map-pin', + 'map-signs', + 'marker', + 'mars', + 'mars-double', + 'mars-stroke', + 'mars-stroke-h', + 'mars-stroke-v', + 'mask', + 'medal', + 'medkit', + 'meh', + 'meh-blank', + 'meh-rolling-eyes', + 'memory', + 'menorah', + 'mercury', + 'meteor', + 'microchip', + 'microphone', + 'microphone-alt', + 'microphone-alt-slash', + 'microphone-slash', + 'microscope', + 'minus', + 'minus-circle', + 'minus-square', + 'mitten', + 'mobile', + 'mobile-alt', + 'money-bill', + 'money-bill-alt', + 'money-bill-wave', + 'money-bill-wave-alt', + 'money-check', + 'money-check-alt', + 'monument', + 'moon', + 'mortar-pestle', + 'mosque', + 'motorcycle', + 'mountain', + 'mouse', + 'mouse-pointer', + 'mug-hot', + 'music', + 'network-wired', + 'neuter', + 'newspaper', + 'not-equal', + 'notes-medical', + 'object-group', + 'object-ungroup', + 'oil-can', + 'om', + 'otter', + 'outdent', + 'pager', + 'paint-brush', + 'paint-roller', + 'palette', + 'pallet', + 'paper-plane', + 'paperclip', + 'parachute-box', + 'paragraph', + 'parking', + 'passport', + 'pastafarianism', + 'paste', + 'pause', + 'pause-circle', + 'paw', + 'peace', + 'pen', + 'pen-alt', + 'pen-fancy', + 'pen-nib', + 'pen-square', + 'pencil-alt', + 'pencil-ruler', + 'people-carry', + 'pepper-hot', + 'percent', + 'percentage', + 'person-booth', + 'phone', + 'phone-alt', + 'phone-slash', + 'phone-square', + 'phone-square-alt', + 'phone-volume', + 'photo-video', + 'piggy-bank', + 'pills', + 'pizza-slice', + 'place-of-worship', + 'plane', + 'plane-arrival', + 'plane-departure', + 'play', + 'play-circle', + 'plug', + 'plus', + 'plus-circle', + 'plus-square', + 'podcast', + 'poll', + 'poll-h', + 'poo', + 'poo-storm', + 'poop', + 'portrait', + 'pound-sign', + 'power-off', + 'pray', + 'praying-hands', + 'prescription', + 'prescription-bottle', + 'prescription-bottle-alt', + 'print', + 'procedures', + 'project-diagram', + 'puzzle-piece', + 'qrcode', + 'question', + 'question-circle', + 'quidditch', + 'quote-left', + 'quote-right', + 'quran', + 'radiation', + 'radiation-alt', + 'rainbow', + 'random', + 'receipt', + 'record-vinyl', + 'recycle', + 'redo', + 'redo-alt', + 'registered', + 'remove-format', + 'reply', + 'reply-all', + 'republican', + 'restroom', + 'retweet', + 'ribbon', + 'ring', + 'road', + 'robot', + 'rocket', + 'route', + 'rss', + 'rss-square', + 'ruble-sign', + 'ruler', + 'ruler-combined', + 'ruler-horizontal', + 'ruler-vertical', + 'running', + 'rupee-sign', + 'sad-cry', + 'sad-tear', + 'satellite', + 'satellite-dish', + 'save', + 'school', + 'screwdriver', + 'scroll', + 'sd-card', + 'search', + 'search-dollar', + 'search-location', + 'search-minus', + 'search-plus', + 'seedling', + 'server', + 'shapes', + 'share', + 'share-alt', + 'share-alt-square', + 'share-square', + 'shekel-sign', + 'shield-alt', + 'ship', + 'shipping-fast', + 'shoe-prints', + 'shopping-bag', + 'shopping-basket', + 'shopping-cart', + 'shower', + 'shuttle-van', + 'sign', + 'sign-in-alt', + 'sign-language', + 'sign-out-alt', + 'signal', + 'signature', + 'sim-card', + 'sitemap', + 'skating', + 'skiing', + 'skiing-nordic', + 'skull', + 'skull-crossbones', + 'slash', + 'sleigh', + 'sliders-h', + 'smile', + 'smile-beam', + 'smile-wink', + 'smog', + 'smoking', + 'smoking-ban', + 'sms', + 'snowboarding', + 'snowflake', + 'snowman', + 'snowplow', + 'socks', + 'solar-panel', + 'sort', + 'sort-alpha-down', + 'sort-alpha-down-alt', + 'sort-alpha-up', + 'sort-alpha-up-alt', + 'sort-amount-down', + 'sort-amount-down-alt', + 'sort-amount-up', + 'sort-amount-up-alt', + 'sort-down', + 'sort-numeric-down', + 'sort-numeric-down-alt', + 'sort-numeric-up', + 'sort-numeric-up-alt', + 'sort-up', + 'spa', + 'space-shuttle', + 'spell-check', + 'spider', + 'spinner', + 'splotch', + 'spray-can', + 'square', + 'square-full', + 'square-root-alt', + 'stamp', + 'star', + 'star-and-crescent', + 'star-half', + 'star-half-alt', + 'star-of-david', + 'star-of-life', + 'step-backward', + 'step-forward', + 'stethoscope', + 'sticky-note', + 'stop', + 'stop-circle', + 'stopwatch', + 'store', + 'store-alt', + 'stream', + 'street-view', + 'strikethrough', + 'stroopwafel', + 'subscript', + 'subway', + 'suitcase', + 'suitcase-rolling', + 'sun', + 'superscript', + 'surprise', + 'swatchbook', + 'swimmer', + 'swimming-pool', + 'synagogue', + 'sync', + 'sync-alt', + 'syringe', + 'table', + 'table-tennis', + 'tablet', + 'tablet-alt', + 'tablets', + 'tachometer-alt', + 'tag', + 'tags', + 'tape', + 'tasks', + 'taxi', + 'teeth', + 'teeth-open', + 'temperature-high', + 'temperature-low', + 'tenge', + 'terminal', + 'text-height', + 'text-width', + 'th', + 'th-large', + 'th-list', + 'theater-masks', + 'thermometer', + 'thermometer-empty', + 'thermometer-full', + 'thermometer-half', + 'thermometer-quarter', + 'thermometer-three-quarters', + 'thumbs-down', + 'thumbs-up', + 'thumbtack', + 'ticket-alt', + 'times', + 'times-circle', + 'tint', + 'tint-slash', + 'tired', + 'toggle-off', + 'toggle-on', + 'toilet', + 'toilet-paper', + 'toolbox', + 'tools', + 'tooth', + 'torah', + 'torii-gate', + 'tractor', + 'trademark', + 'traffic-light', + 'trailer', + 'train', + 'tram', + 'transgender', + 'transgender-alt', + 'trash', + 'trash-alt', + 'trash-restore', + 'trash-restore-alt', + 'tree', + 'trophy', + 'truck', + 'truck-loading', + 'truck-monster', + 'truck-moving', + 'truck-pickup', + 'tshirt', + 'tty', + 'tv', + 'umbrella', + 'umbrella-beach', + 'underline', + 'undo', + 'undo-alt', + 'universal-access', + 'university', + 'unlink', + 'unlock', + 'unlock-alt', + 'upload', + 'user', + 'user-alt', + 'user-alt-slash', + 'user-astronaut', + 'user-check', + 'user-circle', + 'user-clock', + 'user-cog', + 'user-edit', + 'user-friends', + 'user-graduate', + 'user-injured', + 'user-lock', + 'user-md', + 'user-minus', + 'user-ninja', + 'user-nurse', + 'user-plus', + 'user-secret', + 'user-shield', + 'user-slash', + 'user-tag', + 'user-tie', + 'user-times', + 'users', + 'users-cog', + 'utensil-spoon', + 'utensils', + 'vector-square', + 'venus', + 'venus-double', + 'venus-mars', + 'vial', + 'vials', + 'video', + 'video-slash', + 'vihara', + 'voicemail', + 'volleyball-ball', + 'volume-down', + 'volume-mute', + 'volume-off', + 'volume-up', + 'vote-yea', + 'vr-cardboard', + 'walking', + 'wallet', + 'warehouse', + 'water', + 'wave-square', + 'weight', + 'weight-hanging', + 'wheelchair', + 'wifi', + 'wind', + 'window-close', + 'window-maximize', + 'window-minimize', + 'window-restore', + 'wine-bottle', + 'wine-glass', + 'wine-glass-alt', + 'won-sign', + 'wrench', + 'x-ray', + 'yen-sign', + 'yin-yang', +] module.exports = [ { - url: "/icon/getList", - type: "post", + url: '/icon/getList', + type: 'post', response(config) { - const { title, pageNo = 1, pageSize = 72 } = config.body; + const { title, pageNo = 1, pageSize = 72 } = config.body let mockList = data.filter((item) => { - if (title && item.indexOf(title) < 0) return false; - return true; - }); + if (title && item.indexOf(title) < 0) return false + return true + }) const pageList = mockList.filter( (item, index) => index < pageSize * pageNo && index >= pageSize * (pageNo - 1) - ); + ) return { code: 200, - msg: "success", + msg: 'success', totalCount: mockList.length, data: pageList, - }; + } }, }, -]; +] diff --git a/mock/controller/menuManagement.js b/mock/controller/menuManagement.js index a5e6601..b86a178 100644 --- a/mock/controller/menuManagement.js +++ b/mock/controller/menuManagement.js @@ -1,51 +1,51 @@ module.exports = [ { - url: "/menuManagement/getTree", - type: "post", + url: '/menuManagement/getTree', + type: 'post', response() { return { code: 200, - msg: "success", + msg: 'success', totalCount: 999, data: [ { - id: "root", - label: "全部角色", + id: 'root', + label: '全部角色', children: [ { - id: "@id", - permission: "admin", - label: "admin角色", + id: '@id', + permission: 'admin', + label: 'admin角色', }, { - id: "@id", - permission: "editor", - label: "editor角色", + id: '@id', + permission: 'editor', + label: 'editor角色', }, ], }, ], - }; + } }, }, { - url: "/menuManagement/doEdit", - type: "post", + url: '/menuManagement/doEdit', + type: 'post', response() { return { code: 200, - msg: "模拟保存成功", - }; + msg: '模拟保存成功', + } }, }, { - url: "/menuManagement/doDelete", - type: "post", + url: '/menuManagement/doDelete', + type: 'post', response() { return { code: 200, - msg: "模拟删除成功", - }; + msg: '模拟删除成功', + } }, }, -]; +] diff --git a/mock/controller/notice.js b/mock/controller/notice.js index f7a1eec..d8ebfb4 100644 --- a/mock/controller/notice.js +++ b/mock/controller/notice.js @@ -1,33 +1,33 @@ const data = [ { title: - "鸣谢:尤雨溪、蒋豪群、element-ui、唐金州、花裤衩、贤心、iView、uView的开源项目给我带来的很多的灵感,弱小的人才习惯嘲讽与否定,内心强大的人从不吝啬赞美与鼓励,人生在世,得到每个人的认可几乎是痴心妄想,我也只是一条略懂前端的咸鱼,可我仍一直怀揣着改变世界的梦想,希望我们每个人,不管过程怎样,结局都是美好的。", + '鸣谢:尤雨溪、蒋豪群、element-ui、唐金州、花裤衩、贤心、iView、uView的开源项目给我带来的很多的灵感,弱小的人才习惯嘲讽与否定,内心强大的人从不吝啬赞美与鼓励,人生在世,得到每个人的认可几乎是痴心妄想,我也只是一条略懂前端的咸鱼,可我仍一直怀揣着改变世界的梦想,希望我们每个人,不管过程怎样,结局都是美好的。', closable: false, - type: "success", + type: 'success', }, { title: - "作者寄语:感谢Star,感恩相遇,愿世间美好与我们环环相扣,加油!屏幕前的我们,打破桎梏,坚守初心。其实人生改变命运的机会并没有太多,我们并不是不优秀,我们也并不是一无是处,我们也希望驻足山巅被众人仰望,也许我们缺少的只是一个机会,缺少的只是生命中的导师,我希望这个框架帮助到更多的人,希望有一天,我们面试的时候不再胆怯,希望有一天别人看到的不仅仅是你的努力,还有你的功成名就,出人头地。", + '作者寄语:感谢Star,感恩相遇,愿世间美好与我们环环相扣,加油!屏幕前的我们,打破桎梏,坚守初心。其实人生改变命运的机会并没有太多,我们并不是不优秀,我们也并不是一无是处,我们也希望驻足山巅被众人仰望,也许我们缺少的只是一个机会,缺少的只是生命中的导师,我希望这个框架帮助到更多的人,希望有一天,我们面试的时候不再胆怯,希望有一天别人看到的不仅仅是你的努力,还有你的功成名就,出人头地。', closable: false, - type: "warning", + type: 'warning', }, { title: - "随笔:我一直在寻找开源的真谛,我一直再想什么是开源,我一开始觉得免费就是开源,好像又不是。我理解的开源是:你也开源,我也开源,大家一起贡献,相互帮助。我最担心的事情是:我一个小人物,去伺候一众的伸手党,我想,这不是开源该有的氛围。我还太年轻,不懂什么是格局,我只知道,无私的帮助他人,能给我带来快乐,却不能给我带来收入,当然,有时候,快乐对我来说就已经足够了。可惜我是一个人,没有精力帮助到每一个人,可惜这个世界需要赚钱,才能过上平凡的生活,可惜了我的梦想,这个物欲横流的时代,理想主义的我们,即使内心坚决如铁,也似乎寸步难行。", + '随笔:我一直在寻找开源的真谛,我一直再想什么是开源,我一开始觉得免费就是开源,好像又不是。我理解的开源是:你也开源,我也开源,大家一起贡献,相互帮助。我最担心的事情是:我一个小人物,去伺候一众的伸手党,我想,这不是开源该有的氛围。我还太年轻,不懂什么是格局,我只知道,无私的帮助他人,能给我带来快乐,却不能给我带来收入,当然,有时候,快乐对我来说就已经足够了。可惜我是一个人,没有精力帮助到每一个人,可惜这个世界需要赚钱,才能过上平凡的生活,可惜了我的梦想,这个物欲横流的时代,理想主义的我们,即使内心坚决如铁,也似乎寸步难行。', closable: false, - type: "success", + type: 'success', }, -]; +] module.exports = [ { - url: "/notice/getList", - type: "post", + url: '/notice/getList', + type: 'post', response() { return { code: 200, - msg: "success", + msg: 'success', data, - }; + } }, }, -]; +] diff --git a/mock/controller/personalCenter.js b/mock/controller/personalCenter.js index c9cf5f5..0db25e7 100644 --- a/mock/controller/personalCenter.js +++ b/mock/controller/personalCenter.js @@ -1,42 +1,42 @@ -const { mock } = require("mockjs"); +const { mock } = require('mockjs') module.exports = [ { - url: "/personalCenter/getList", - type: "post", + url: '/personalCenter/getList', + type: 'post', response(config) { return { code: 200, - msg: "success", + msg: 'success', totalCount: 999, data: mock({ - "data|10": [ + 'data|10': [ { - id: "@id", + id: '@id', }, ], }).data, - }; + } }, }, { - url: "/personalCenter/doEdit", - type: "post", + url: '/personalCenter/doEdit', + type: 'post', response() { return { code: 200, - msg: "模拟保存成功", - }; + msg: '模拟保存成功', + } }, }, { - url: "/personalCenter/doDelete", - type: "post", + url: '/personalCenter/doDelete', + type: 'post', response() { return { code: 200, - msg: "模拟删除成功", - }; + msg: '模拟删除成功', + } }, }, -]; +] diff --git a/mock/controller/remixIcon.js b/mock/controller/remixIcon.js index 958d29f..db299ce 100644 --- a/mock/controller/remixIcon.js +++ b/mock/controller/remixIcon.js @@ -1,2294 +1,2294 @@ const data = [ - "24-hours-fill", - "24-hours-line", - "4k-fill", - "4k-line", - "a-b", - "account-box-fill", - "account-box-line", - "account-circle-fill", - "account-circle-line", - "account-pin-box-fill", - "account-pin-box-line", - "account-pin-circle-fill", - "account-pin-circle-line", - "add-box-fill", - "add-box-line", - "add-circle-fill", - "add-circle-line", - "add-fill", - "add-line", - "admin-fill", - "admin-line", - "airplay-fill", - "airplay-line", - "alarm-fill", - "alarm-line", - "alarm-warning-fill", - "alarm-warning-line", - "album-fill", - "album-line", - "alert-fill", - "alert-line", - "aliens-fill", - "aliens-line", - "align-bottom", - "align-center", - "align-justify", - "align-left", - "align-right", - "align-top", - "align-vertically", - "alipay-fill", - "alipay-line", - "amazon-fill", - "amazon-line", - "anchor-fill", - "anchor-line", - "ancient-gate-fill", - "ancient-gate-line", - "ancient-pavilion-fill", - "ancient-pavilion-line", - "android-fill", - "android-line", - "angularjs-fill", - "angularjs-line", - "anticlockwise-2-fill", - "anticlockwise-2-line", - "anticlockwise-fill", - "anticlockwise-line", - "app-store-fill", - "app-store-line", - "apple-fill", - "apple-line", - "apps-2-fill", - "apps-2-line", - "apps-fill", - "apps-line", - "archive-drawer-fill", - "archive-drawer-line", - "archive-fill", - "archive-line", - "arrow-down-circle-fill", - "arrow-down-circle-line", - "arrow-down-fill", - "arrow-down-line", - "arrow-down-s-fill", - "arrow-down-s-line", - "arrow-drop-down-fill", - "arrow-drop-down-line", - "arrow-drop-left-fill", - "arrow-drop-left-line", - "arrow-drop-right-fill", - "arrow-drop-right-line", - "arrow-drop-up-fill", - "arrow-drop-up-line", - "arrow-go-back-fill", - "arrow-go-back-line", - "arrow-go-forward-fill", - "arrow-go-forward-line", - "arrow-left-circle-fill", - "arrow-left-circle-line", - "arrow-left-down-fill", - "arrow-left-down-line", - "arrow-left-fill", - "arrow-left-line", - "arrow-left-right-fill", - "arrow-left-right-line", - "arrow-left-s-fill", - "arrow-left-s-line", - "arrow-left-up-fill", - "arrow-left-up-line", - "arrow-right-circle-fill", - "arrow-right-circle-line", - "arrow-right-down-fill", - "arrow-right-down-line", - "arrow-right-fill", - "arrow-right-line", - "arrow-right-s-fill", - "arrow-right-s-line", - "arrow-right-up-fill", - "arrow-right-up-line", - "arrow-up-circle-fill", - "arrow-up-circle-line", - "arrow-up-down-fill", - "arrow-up-down-line", - "arrow-up-fill", - "arrow-up-line", - "arrow-up-s-fill", - "arrow-up-s-line", - "artboard-2-fill", - "artboard-2-line", - "artboard-fill", - "artboard-line", - "article-fill", - "article-line", - "aspect-ratio-fill", - "aspect-ratio-line", - "asterisk", - "at-fill", - "at-line", - "attachment-2", - "attachment-fill", - "attachment-line", - "auction-fill", - "auction-line", - "award-fill", - "award-line", - "baidu-fill", - "baidu-line", - "ball-pen-fill", - "ball-pen-line", - "bank-card-2-fill", - "bank-card-2-line", - "bank-card-fill", - "bank-card-line", - "bank-fill", - "bank-line", - "bar-chart-2-fill", - "bar-chart-2-line", - "bar-chart-box-fill", - "bar-chart-box-line", - "bar-chart-fill", - "bar-chart-grouped-fill", - "bar-chart-grouped-line", - "bar-chart-horizontal-fill", - "bar-chart-horizontal-line", - "bar-chart-line", - "barcode-box-fill", - "barcode-box-line", - "barcode-fill", - "barcode-line", - "barricade-fill", - "barricade-line", - "base-station-fill", - "base-station-line", - "basketball-fill", - "basketball-line", - "battery-2-charge-fill", - "battery-2-charge-line", - "battery-2-fill", - "battery-2-line", - "battery-charge-fill", - "battery-charge-line", - "battery-fill", - "battery-line", - "battery-low-fill", - "battery-low-line", - "battery-saver-fill", - "battery-saver-line", - "battery-share-fill", - "battery-share-line", - "bear-smile-fill", - "bear-smile-line", - "behance-fill", - "behance-line", - "bell-fill", - "bell-line", - "bike-fill", - "bike-line", - "bilibili-fill", - "bilibili-line", - "bill-fill", - "bill-line", - "billiards-fill", - "billiards-line", - "bit-coin-fill", - "bit-coin-line", - "blaze-fill", - "blaze-line", - "bluetooth-connect-fill", - "bluetooth-connect-line", - "bluetooth-fill", - "bluetooth-line", - "blur-off-fill", - "blur-off-line", - "body-scan-fill", - "body-scan-line", - "bold", - "book-2-fill", - "book-2-line", - "book-3-fill", - "book-3-line", - "book-fill", - "book-line", - "book-mark-fill", - "book-mark-line", - "book-open-fill", - "book-open-line", - "book-read-fill", - "book-read-line", - "booklet-fill", - "booklet-line", - "bookmark-2-fill", - "bookmark-2-line", - "bookmark-3-fill", - "bookmark-3-line", - "bookmark-fill", - "bookmark-line", - "boxing-fill", - "boxing-line", - "braces-fill", - "braces-line", - "brackets-fill", - "brackets-line", - "briefcase-2-fill", - "briefcase-2-line", - "briefcase-3-fill", - "briefcase-3-line", - "briefcase-4-fill", - "briefcase-4-line", - "briefcase-5-fill", - "briefcase-5-line", - "briefcase-fill", - "briefcase-line", - "bring-forward", - "bring-to-front", - "broadcast-fill", - "broadcast-line", - "brush-2-fill", - "brush-2-line", - "brush-3-fill", - "brush-3-line", - "brush-4-fill", - "brush-4-line", - "brush-fill", - "brush-line", - "bubble-chart-fill", - "bubble-chart-line", - "bug-2-fill", - "bug-2-line", - "bug-fill", - "bug-line", - "building-2-fill", - "building-2-line", - "building-3-fill", - "building-3-line", - "building-4-fill", - "building-4-line", - "building-fill", - "building-line", - "bus-2-fill", - "bus-2-line", - "bus-fill", - "bus-line", - "bus-wifi-fill", - "bus-wifi-line", - "cactus-fill", - "cactus-line", - "cake-2-fill", - "cake-2-line", - "cake-3-fill", - "cake-3-line", - "cake-fill", - "cake-line", - "calculator-fill", - "calculator-line", - "calendar-2-fill", - "calendar-2-line", - "calendar-check-fill", - "calendar-check-line", - "calendar-event-fill", - "calendar-event-line", - "calendar-fill", - "calendar-line", - "calendar-todo-fill", - "calendar-todo-line", - "camera-2-fill", - "camera-2-line", - "camera-3-fill", - "camera-3-line", - "camera-fill", - "camera-lens-fill", - "camera-lens-line", - "camera-line", - "camera-off-fill", - "camera-off-line", - "camera-switch-fill", - "camera-switch-line", - "capsule-fill", - "capsule-line", - "car-fill", - "car-line", - "car-washing-fill", - "car-washing-line", - "caravan-fill", - "caravan-line", - "cast-fill", - "cast-line", - "cellphone-fill", - "cellphone-line", - "celsius-fill", - "celsius-line", - "centos-fill", - "centos-line", - "character-recognition-fill", - "character-recognition-line", - "charging-pile-2-fill", - "charging-pile-2-line", - "charging-pile-fill", - "charging-pile-line", - "chat-1-fill", - "chat-1-line", - "chat-2-fill", - "chat-2-line", - "chat-3-fill", - "chat-3-line", - "chat-4-fill", - "chat-4-line", - "chat-check-fill", - "chat-check-line", - "chat-delete-fill", - "chat-delete-line", - "chat-download-fill", - "chat-download-line", - "chat-follow-up-fill", - "chat-follow-up-line", - "chat-forward-fill", - "chat-forward-line", - "chat-heart-fill", - "chat-heart-line", - "chat-history-fill", - "chat-history-line", - "chat-new-fill", - "chat-new-line", - "chat-off-fill", - "chat-off-line", - "chat-poll-fill", - "chat-poll-line", - "chat-private-fill", - "chat-private-line", - "chat-quote-fill", - "chat-quote-line", - "chat-settings-fill", - "chat-settings-line", - "chat-smile-2-fill", - "chat-smile-2-line", - "chat-smile-3-fill", - "chat-smile-3-line", - "chat-smile-fill", - "chat-smile-line", - "chat-upload-fill", - "chat-upload-line", - "chat-voice-fill", - "chat-voice-line", - "check-double-fill", - "check-double-line", - "check-fill", - "check-line", - "checkbox-blank-circle-fill", - "checkbox-blank-circle-line", - "checkbox-blank-fill", - "checkbox-blank-line", - "checkbox-circle-fill", - "checkbox-circle-line", - "checkbox-fill", - "checkbox-indeterminate-fill", - "checkbox-indeterminate-line", - "checkbox-line", - "checkbox-multiple-blank-fill", - "checkbox-multiple-blank-line", - "checkbox-multiple-fill", - "checkbox-multiple-line", - "china-railway-fill", - "china-railway-line", - "chrome-fill", - "chrome-line", - "clapperboard-fill", - "clapperboard-line", - "clipboard-fill", - "clipboard-line", - "clockwise-2-fill", - "clockwise-2-line", - "clockwise-fill", - "clockwise-line", - "close-circle-fill", - "close-circle-line", - "close-fill", - "close-line", - "closed-captioning-fill", - "closed-captioning-line", - "cloud-fill", - "cloud-line", - "cloud-off-fill", - "cloud-off-line", - "cloud-windy-fill", - "cloud-windy-line", - "cloudy-2-fill", - "cloudy-2-line", - "cloudy-fill", - "cloudy-line", - "code-box-fill", - "code-box-line", - "code-fill", - "code-line", - "code-s-fill", - "code-s-line", - "code-s-slash-fill", - "code-s-slash-line", - "code-view", - "codepen-fill", - "codepen-line", - "coin-fill", - "coin-line", - "coins-fill", - "coins-line", - "collage-fill", - "collage-line", - "command-fill", - "command-line", - "community-fill", - "community-line", - "compass-2-fill", - "compass-2-line", - "compass-3-fill", - "compass-3-line", - "compass-4-fill", - "compass-4-line", - "compass-discover-fill", - "compass-discover-line", - "compass-fill", - "compass-line", - "compasses-2-fill", - "compasses-2-line", - "compasses-fill", - "compasses-line", - "computer-fill", - "computer-line", - "contacts-book-2-fill", - "contacts-book-2-line", - "contacts-book-fill", - "contacts-book-line", - "contacts-book-upload-fill", - "contacts-book-upload-line", - "contacts-fill", - "contacts-line", - "contrast-2-fill", - "contrast-2-line", - "contrast-drop-2-fill", - "contrast-drop-2-line", - "contrast-drop-fill", - "contrast-drop-line", - "contrast-fill", - "contrast-line", - "copper-coin-fill", - "copper-coin-line", - "copper-diamond-fill", - "copper-diamond-line", - "copyleft-fill", - "copyleft-line", - "copyright-fill", - "copyright-line", - "coreos-fill", - "coreos-line", - "coupon-2-fill", - "coupon-2-line", - "coupon-3-fill", - "coupon-3-line", - "coupon-4-fill", - "coupon-4-line", - "coupon-5-fill", - "coupon-5-line", - "coupon-fill", - "coupon-line", - "cpu-fill", - "cpu-line", - "creative-commons-by-fill", - "creative-commons-by-line", - "creative-commons-fill", - "creative-commons-line", - "creative-commons-nc-fill", - "creative-commons-nc-line", - "creative-commons-nd-fill", - "creative-commons-nd-line", - "creative-commons-sa-fill", - "creative-commons-sa-line", - "creative-commons-zero-fill", - "creative-commons-zero-line", - "criminal-fill", - "criminal-line", - "crop-2-fill", - "crop-2-line", - "crop-fill", - "crop-line", - "css3-fill", - "css3-line", - "cup-fill", - "cup-line", - "currency-fill", - "currency-line", - "cursor-fill", - "cursor-line", - "customer-service-2-fill", - "customer-service-2-line", - "customer-service-fill", - "customer-service-line", - "dashboard-2-fill", - "dashboard-2-line", - "dashboard-3-fill", - "dashboard-3-line", - "dashboard-fill", - "dashboard-line", - "database-2-fill", - "database-2-line", - "database-fill", - "database-line", - "delete-back-2-fill", - "delete-back-2-line", - "delete-back-fill", - "delete-back-line", - "delete-bin-2-fill", - "delete-bin-2-line", - "delete-bin-3-fill", - "delete-bin-3-line", - "delete-bin-4-fill", - "delete-bin-4-line", - "delete-bin-5-fill", - "delete-bin-5-line", - "delete-bin-6-fill", - "delete-bin-6-line", - "delete-bin-7-fill", - "delete-bin-7-line", - "delete-bin-fill", - "delete-bin-line", - "delete-column", - "delete-row", - "device-fill", - "device-line", - "device-recover-fill", - "device-recover-line", - "dingding-fill", - "dingding-line", - "direction-fill", - "direction-line", - "disc-fill", - "disc-line", - "discord-fill", - "discord-line", - "discuss-fill", - "discuss-line", - "dislike-fill", - "dislike-line", - "disqus-fill", - "disqus-line", - "divide-fill", - "divide-line", - "donut-chart-fill", - "donut-chart-line", - "door-closed-fill", - "door-closed-line", - "door-fill", - "door-line", - "door-lock-box-fill", - "door-lock-box-line", - "door-lock-fill", - "door-lock-line", - "door-open-fill", - "door-open-line", - "dossier-fill", - "dossier-line", - "douban-fill", - "douban-line", - "double-quotes-l", - "double-quotes-r", - "download-2-fill", - "download-2-line", - "download-cloud-2-fill", - "download-cloud-2-line", - "download-cloud-fill", - "download-cloud-line", - "download-fill", - "download-line", - "draft-fill", - "draft-line", - "drag-drop-fill", - "drag-drop-line", - "drag-move-2-fill", - "drag-move-2-line", - "drag-move-fill", - "drag-move-line", - "dribbble-fill", - "dribbble-line", - "drive-fill", - "drive-line", - "drizzle-fill", - "drizzle-line", - "drop-fill", - "drop-line", - "dropbox-fill", - "dropbox-line", - "dual-sim-1-fill", - "dual-sim-1-line", - "dual-sim-2-fill", - "dual-sim-2-line", - "dv-fill", - "dv-line", - "dvd-fill", - "dvd-line", - "e-bike-2-fill", - "e-bike-2-line", - "e-bike-fill", - "e-bike-line", - "earth-fill", - "earth-line", - "earthquake-fill", - "earthquake-line", - "edge-fill", - "edge-line", - "edit-2-fill", - "edit-2-line", - "edit-box-fill", - "edit-box-line", - "edit-circle-fill", - "edit-circle-line", - "edit-fill", - "edit-line", - "eject-fill", - "eject-line", - "emotion-2-fill", - "emotion-2-line", - "emotion-fill", - "emotion-happy-fill", - "emotion-happy-line", - "emotion-laugh-fill", - "emotion-laugh-line", - "emotion-line", - "emotion-normal-fill", - "emotion-normal-line", - "emotion-sad-fill", - "emotion-sad-line", - "emotion-unhappy-fill", - "emotion-unhappy-line", - "empathize-fill", - "empathize-line", - "emphasis-cn", - "emphasis", - "english-input", - "equalizer-fill", - "equalizer-line", - "eraser-fill", - "eraser-line", - "error-warning-fill", - "error-warning-line", - "evernote-fill", - "evernote-line", - "exchange-box-fill", - "exchange-box-line", - "exchange-cny-fill", - "exchange-cny-line", - "exchange-dollar-fill", - "exchange-dollar-line", - "exchange-fill", - "exchange-funds-fill", - "exchange-funds-line", - "exchange-line", - "external-link-fill", - "external-link-line", - "eye-2-fill", - "eye-2-line", - "eye-close-fill", - "eye-close-line", - "eye-fill", - "eye-line", - "eye-off-fill", - "eye-off-line", - "facebook-box-fill", - "facebook-box-line", - "facebook-circle-fill", - "facebook-circle-line", - "facebook-fill", - "facebook-line", - "fahrenheit-fill", - "fahrenheit-line", - "feedback-fill", - "feedback-line", - "file-2-fill", - "file-2-line", - "file-3-fill", - "file-3-line", - "file-4-fill", - "file-4-line", - "file-add-fill", - "file-add-line", - "file-chart-2-fill", - "file-chart-2-line", - "file-chart-fill", - "file-chart-line", - "file-cloud-fill", - "file-cloud-line", - "file-code-fill", - "file-code-line", - "file-copy-2-fill", - "file-copy-2-line", - "file-copy-fill", - "file-copy-line", - "file-damage-fill", - "file-damage-line", - "file-download-fill", - "file-download-line", - "file-edit-fill", - "file-edit-line", - "file-excel-2-fill", - "file-excel-2-line", - "file-excel-fill", - "file-excel-line", - "file-fill", - "file-forbid-fill", - "file-forbid-line", - "file-gif-fill", - "file-gif-line", - "file-history-fill", - "file-history-line", - "file-hwp-fill", - "file-hwp-line", - "file-info-fill", - "file-info-line", - "file-line", - "file-list-2-fill", - "file-list-2-line", - "file-list-3-fill", - "file-list-3-line", - "file-list-fill", - "file-list-line", - "file-lock-fill", - "file-lock-line", - "file-mark-fill", - "file-mark-line", - "file-music-fill", - "file-music-line", - "file-paper-2-fill", - "file-paper-2-line", - "file-paper-fill", - "file-paper-line", - "file-pdf-fill", - "file-pdf-line", - "file-ppt-2-fill", - "file-ppt-2-line", - "file-ppt-fill", - "file-ppt-line", - "file-reduce-fill", - "file-reduce-line", - "file-search-fill", - "file-search-line", - "file-settings-fill", - "file-settings-line", - "file-shield-2-fill", - "file-shield-2-line", - "file-shield-fill", - "file-shield-line", - "file-shred-fill", - "file-shred-line", - "file-text-fill", - "file-text-line", - "file-transfer-fill", - "file-transfer-line", - "file-unknow-fill", - "file-unknow-line", - "file-upload-fill", - "file-upload-line", - "file-user-fill", - "file-user-line", - "file-warning-fill", - "file-warning-line", - "file-word-2-fill", - "file-word-2-line", - "file-word-fill", - "file-word-line", - "file-zip-fill", - "file-zip-line", - "film-fill", - "film-line", - "filter-2-fill", - "filter-2-line", - "filter-3-fill", - "filter-3-line", - "filter-fill", - "filter-line", - "filter-off-fill", - "filter-off-line", - "find-replace-fill", - "find-replace-line", - "finder-fill", - "finder-line", - "fingerprint-2-fill", - "fingerprint-2-line", - "fingerprint-fill", - "fingerprint-line", - "fire-fill", - "fire-line", - "firefox-fill", - "firefox-line", - "first-aid-kit-fill", - "first-aid-kit-line", - "flag-2-fill", - "flag-2-line", - "flag-fill", - "flag-line", - "flashlight-fill", - "flashlight-line", - "flask-fill", - "flask-line", - "flight-land-fill", - "flight-land-line", - "flight-takeoff-fill", - "flight-takeoff-line", - "flood-fill", - "flood-line", - "flow-chart", - "flutter-fill", - "flutter-line", - "focus-2-fill", - "focus-2-line", - "focus-3-fill", - "focus-3-line", - "focus-fill", - "focus-line", - "foggy-fill", - "foggy-line", - "folder-2-fill", - "folder-2-line", - "folder-3-fill", - "folder-3-line", - "folder-4-fill", - "folder-4-line", - "folder-5-fill", - "folder-5-line", - "folder-add-fill", - "folder-add-line", - "folder-chart-2-fill", - "folder-chart-2-line", - "folder-chart-fill", - "folder-chart-line", - "folder-download-fill", - "folder-download-line", - "folder-fill", - "folder-forbid-fill", - "folder-forbid-line", - "folder-history-fill", - "folder-history-line", - "folder-info-fill", - "folder-info-line", - "folder-keyhole-fill", - "folder-keyhole-line", - "folder-line", - "folder-lock-fill", - "folder-lock-line", - "folder-music-fill", - "folder-music-line", - "folder-open-fill", - "folder-open-line", - "folder-received-fill", - "folder-received-line", - "folder-reduce-fill", - "folder-reduce-line", - "folder-settings-fill", - "folder-settings-line", - "folder-shared-fill", - "folder-shared-line", - "folder-shield-2-fill", - "folder-shield-2-line", - "folder-shield-fill", - "folder-shield-line", - "folder-transfer-fill", - "folder-transfer-line", - "folder-unknow-fill", - "folder-unknow-line", - "folder-upload-fill", - "folder-upload-line", - "folder-user-fill", - "folder-user-line", - "folder-warning-fill", - "folder-warning-line", - "folder-zip-fill", - "folder-zip-line", - "folders-fill", - "folders-line", - "font-color", - "font-size-2", - "font-size", - "football-fill", - "football-line", - "footprint-fill", - "footprint-line", - "forbid-2-fill", - "forbid-2-line", - "forbid-fill", - "forbid-line", - "format-clear", - "fridge-fill", - "fridge-line", - "fullscreen-exit-fill", - "fullscreen-exit-line", - "fullscreen-fill", - "fullscreen-line", - "function-fill", - "function-line", - "functions", - "funds-box-fill", - "funds-box-line", - "funds-fill", - "funds-line", - "gallery-fill", - "gallery-line", - "gallery-upload-fill", - "gallery-upload-line", - "game-fill", - "game-line", - "gamepad-fill", - "gamepad-line", - "gas-station-fill", - "gas-station-line", - "gatsby-fill", - "gatsby-line", - "genderless-fill", - "genderless-line", - "ghost-2-fill", - "ghost-2-line", - "ghost-fill", - "ghost-line", - "ghost-smile-fill", - "ghost-smile-line", - "gift-2-fill", - "gift-2-line", - "gift-fill", - "gift-line", - "git-branch-fill", - "git-branch-line", - "git-commit-fill", - "git-commit-line", - "git-merge-fill", - "git-merge-line", - "git-pull-request-fill", - "git-pull-request-line", - "git-repository-commits-fill", - "git-repository-commits-line", - "git-repository-fill", - "git-repository-line", - "git-repository-private-fill", - "git-repository-private-line", - "github-fill", - "github-line", - "gitlab-fill", - "gitlab-line", - "global-fill", - "global-line", - "globe-fill", - "globe-line", - "goblet-fill", - "goblet-line", - "google-fill", - "google-line", - "google-play-fill", - "google-play-line", - "government-fill", - "government-line", - "gps-fill", - "gps-line", - "gradienter-fill", - "gradienter-line", - "grid-fill", - "grid-line", - "group-2-fill", - "group-2-line", - "group-fill", - "group-line", - "guide-fill", - "guide-line", - "h-1", - "h-2", - "h-3", - "h-4", - "h-5", - "h-6", - "hail-fill", - "hail-line", - "hammer-fill", - "hammer-line", - "hand-coin-fill", - "hand-coin-line", - "hand-heart-fill", - "hand-heart-line", - "hand-sanitizer-fill", - "hand-sanitizer-line", - "handbag-fill", - "handbag-line", - "hard-drive-2-fill", - "hard-drive-2-line", - "hard-drive-fill", - "hard-drive-line", - "hashtag", - "haze-2-fill", - "haze-2-line", - "haze-fill", - "haze-line", - "hd-fill", - "hd-line", - "heading", - "headphone-fill", - "headphone-line", - "health-book-fill", - "health-book-line", - "heart-2-fill", - "heart-2-line", - "heart-3-fill", - "heart-3-line", - "heart-add-fill", - "heart-add-line", - "heart-fill", - "heart-line", - "heart-pulse-fill", - "heart-pulse-line", - "hearts-fill", - "hearts-line", - "heavy-showers-fill", - "heavy-showers-line", - "history-fill", - "history-line", - "home-2-fill", - "home-2-line", - "home-3-fill", - "home-3-line", - "home-4-fill", - "home-4-line", - "home-5-fill", - "home-5-line", - "home-6-fill", - "home-6-line", - "home-7-fill", - "home-7-line", - "home-8-fill", - "home-8-line", - "home-fill", - "home-gear-fill", - "home-gear-line", - "home-heart-fill", - "home-heart-line", - "home-line", - "home-smile-2-fill", - "home-smile-2-line", - "home-smile-fill", - "home-smile-line", - "home-wifi-fill", - "home-wifi-line", - "honor-of-kings-fill", - "honor-of-kings-line", - "honour-fill", - "honour-line", - "hospital-fill", - "hospital-line", - "hotel-bed-fill", - "hotel-bed-line", - "hotel-fill", - "hotel-line", - "hotspot-fill", - "hotspot-line", - "hq-fill", - "hq-line", - "html5-fill", - "html5-line", - "ie-fill", - "ie-line", - "image-2-fill", - "image-2-line", - "image-add-fill", - "image-add-line", - "image-edit-fill", - "image-edit-line", - "image-fill", - "image-line", - "inbox-archive-fill", - "inbox-archive-line", - "inbox-fill", - "inbox-line", - "inbox-unarchive-fill", - "inbox-unarchive-line", - "increase-decrease-fill", - "increase-decrease-line", - "indent-decrease", - "indent-increase", - "indeterminate-circle-fill", - "indeterminate-circle-line", - "information-fill", - "information-line", - "infrared-thermometer-fill", - "infrared-thermometer-line", - "ink-bottle-fill", - "ink-bottle-line", - "input-cursor-move", - "input-method-fill", - "input-method-line", - "insert-column-left", - "insert-column-right", - "insert-row-bottom", - "insert-row-top", - "instagram-fill", - "instagram-line", - "install-fill", - "install-line", - "invision-fill", - "invision-line", - "italic", - "kakao-talk-fill", - "kakao-talk-line", - "key-2-fill", - "key-2-line", - "key-fill", - "key-line", - "keyboard-box-fill", - "keyboard-box-line", - "keyboard-fill", - "keyboard-line", - "keynote-fill", - "keynote-line", - "knife-blood-fill", - "knife-blood-line", - "knife-fill", - "knife-line", - "landscape-fill", - "landscape-line", - "layout-2-fill", - "layout-2-line", - "layout-3-fill", - "layout-3-line", - "layout-4-fill", - "layout-4-line", - "layout-5-fill", - "layout-5-line", - "layout-6-fill", - "layout-6-line", - "layout-bottom-2-fill", - "layout-bottom-2-line", - "layout-bottom-fill", - "layout-bottom-line", - "layout-column-fill", - "layout-column-line", - "layout-fill", - "layout-grid-fill", - "layout-grid-line", - "layout-left-2-fill", - "layout-left-2-line", - "layout-left-fill", - "layout-left-line", - "layout-line", - "layout-masonry-fill", - "layout-masonry-line", - "layout-right-2-fill", - "layout-right-2-line", - "layout-right-fill", - "layout-right-line", - "layout-row-fill", - "layout-row-line", - "layout-top-2-fill", - "layout-top-2-line", - "layout-top-fill", - "layout-top-line", - "leaf-fill", - "leaf-line", - "lifebuoy-fill", - "lifebuoy-line", - "lightbulb-fill", - "lightbulb-flash-fill", - "lightbulb-flash-line", - "lightbulb-line", - "line-chart-fill", - "line-chart-line", - "line-fill", - "line-height", - "line-line", - "link-m", - "link-unlink-m", - "link-unlink", - "link", - "linkedin-box-fill", - "linkedin-box-line", - "linkedin-fill", - "linkedin-line", - "links-fill", - "links-line", - "list-check-2", - "list-check", - "list-ordered", - "list-settings-fill", - "list-settings-line", - "list-unordered", - "live-fill", - "live-line", - "loader-2-fill", - "loader-2-line", - "loader-3-fill", - "loader-3-line", - "loader-4-fill", - "loader-4-line", - "loader-5-fill", - "loader-5-line", - "loader-fill", - "loader-line", - "lock-2-fill", - "lock-2-line", - "lock-fill", - "lock-line", - "lock-password-fill", - "lock-password-line", - "lock-unlock-fill", - "lock-unlock-line", - "login-box-fill", - "login-box-line", - "login-circle-fill", - "login-circle-line", - "logout-box-fill", - "logout-box-line", - "logout-box-r-fill", - "logout-box-r-line", - "logout-circle-fill", - "logout-circle-line", - "logout-circle-r-fill", - "logout-circle-r-line", - "luggage-cart-fill", - "luggage-cart-line", - "luggage-deposit-fill", - "luggage-deposit-line", - "lungs-fill", - "lungs-line", - "mac-fill", - "mac-line", - "macbook-fill", - "macbook-line", - "magic-fill", - "magic-line", - "mail-add-fill", - "mail-add-line", - "mail-check-fill", - "mail-check-line", - "mail-close-fill", - "mail-close-line", - "mail-download-fill", - "mail-download-line", - "mail-fill", - "mail-forbid-fill", - "mail-forbid-line", - "mail-line", - "mail-lock-fill", - "mail-lock-line", - "mail-open-fill", - "mail-open-line", - "mail-send-fill", - "mail-send-line", - "mail-settings-fill", - "mail-settings-line", - "mail-star-fill", - "mail-star-line", - "mail-unread-fill", - "mail-unread-line", - "mail-volume-fill", - "mail-volume-line", - "map-2-fill", - "map-2-line", - "map-fill", - "map-line", - "map-pin-2-fill", - "map-pin-2-line", - "map-pin-3-fill", - "map-pin-3-line", - "map-pin-4-fill", - "map-pin-4-line", - "map-pin-5-fill", - "map-pin-5-line", - "map-pin-add-fill", - "map-pin-add-line", - "map-pin-fill", - "map-pin-line", - "map-pin-range-fill", - "map-pin-range-line", - "map-pin-time-fill", - "map-pin-time-line", - "map-pin-user-fill", - "map-pin-user-line", - "mark-pen-fill", - "mark-pen-line", - "markdown-fill", - "markdown-line", - "markup-fill", - "markup-line", - "mastercard-fill", - "mastercard-line", - "mastodon-fill", - "mastodon-line", - "medal-2-fill", - "medal-2-line", - "medal-fill", - "medal-line", - "medicine-bottle-fill", - "medicine-bottle-line", - "medium-fill", - "medium-line", - "men-fill", - "men-line", - "mental-health-fill", - "mental-health-line", - "menu-2-fill", - "menu-2-line", - "menu-3-fill", - "menu-3-line", - "menu-4-fill", - "menu-4-line", - "menu-5-fill", - "menu-5-line", - "menu-add-fill", - "menu-add-line", - "menu-fill", - "menu-fold-fill", - "menu-fold-line", - "menu-line", - "menu-unfold-fill", - "menu-unfold-line", - "merge-cells-horizontal", - "merge-cells-vertical", - "message-2-fill", - "message-2-line", - "message-3-fill", - "message-3-line", - "message-fill", - "message-line", - "messenger-fill", - "messenger-line", - "meteor-fill", - "meteor-line", - "mic-2-fill", - "mic-2-line", - "mic-fill", - "mic-line", - "mic-off-fill", - "mic-off-line", - "mickey-fill", - "mickey-line", - "microscope-fill", - "microscope-line", - "microsoft-fill", - "microsoft-line", - "mind-map", - "mini-program-fill", - "mini-program-line", - "mist-fill", - "mist-line", - "money-cny-box-fill", - "money-cny-box-line", - "money-cny-circle-fill", - "money-cny-circle-line", - "money-dollar-box-fill", - "money-dollar-box-line", - "money-dollar-circle-fill", - "money-dollar-circle-line", - "money-euro-box-fill", - "money-euro-box-line", - "money-euro-circle-fill", - "money-euro-circle-line", - "money-pound-box-fill", - "money-pound-box-line", - "money-pound-circle-fill", - "money-pound-circle-line", - "moon-clear-fill", - "moon-clear-line", - "moon-cloudy-fill", - "moon-cloudy-line", - "moon-fill", - "moon-foggy-fill", - "moon-foggy-line", - "moon-line", - "more-2-fill", - "more-2-line", - "more-fill", - "more-line", - "motorbike-fill", - "motorbike-line", - "mouse-fill", - "mouse-line", - "movie-2-fill", - "movie-2-line", - "movie-fill", - "movie-line", - "music-2-fill", - "music-2-line", - "music-fill", - "music-line", - "mv-fill", - "mv-line", - "navigation-fill", - "navigation-line", - "netease-cloud-music-fill", - "netease-cloud-music-line", - "netflix-fill", - "netflix-line", - "newspaper-fill", - "newspaper-line", - "node-tree", - "notification-2-fill", - "notification-2-line", - "notification-3-fill", - "notification-3-line", - "notification-4-fill", - "notification-4-line", - "notification-badge-fill", - "notification-badge-line", - "notification-fill", - "notification-line", - "notification-off-fill", - "notification-off-line", - "npmjs-fill", - "npmjs-line", - "number-0", - "number-1", - "number-2", - "number-3", - "number-4", - "number-5", - "number-6", - "number-7", - "number-8", - "number-9", - "numbers-fill", - "numbers-line", - "nurse-fill", - "nurse-line", - "oil-fill", - "oil-line", - "omega", - "open-arm-fill", - "open-arm-line", - "open-source-fill", - "open-source-line", - "opera-fill", - "opera-line", - "order-play-fill", - "order-play-line", - "organization-chart", - "outlet-2-fill", - "outlet-2-line", - "outlet-fill", - "outlet-line", - "page-separator", - "pages-fill", - "pages-line", - "paint-brush-fill", - "paint-brush-line", - "paint-fill", - "paint-line", - "palette-fill", - "palette-line", - "pantone-fill", - "pantone-line", - "paragraph", - "parent-fill", - "parent-line", - "parentheses-fill", - "parentheses-line", - "parking-box-fill", - "parking-box-line", - "parking-fill", - "parking-line", - "passport-fill", - "passport-line", - "patreon-fill", - "patreon-line", - "pause-circle-fill", - "pause-circle-line", - "pause-fill", - "pause-line", - "pause-mini-fill", - "pause-mini-line", - "paypal-fill", - "paypal-line", - "pen-nib-fill", - "pen-nib-line", - "pencil-fill", - "pencil-line", - "pencil-ruler-2-fill", - "pencil-ruler-2-line", - "pencil-ruler-fill", - "pencil-ruler-line", - "percent-fill", - "percent-line", - "phone-camera-fill", - "phone-camera-line", - "phone-fill", - "phone-find-fill", - "phone-find-line", - "phone-line", - "phone-lock-fill", - "phone-lock-line", - "picture-in-picture-2-fill", - "picture-in-picture-2-line", - "picture-in-picture-exit-fill", - "picture-in-picture-exit-line", - "picture-in-picture-fill", - "picture-in-picture-line", - "pie-chart-2-fill", - "pie-chart-2-line", - "pie-chart-box-fill", - "pie-chart-box-line", - "pie-chart-fill", - "pie-chart-line", - "pin-distance-fill", - "pin-distance-line", - "ping-pong-fill", - "ping-pong-line", - "pinterest-fill", - "pinterest-line", - "pinyin-input", - "pixelfed-fill", - "pixelfed-line", - "plane-fill", - "plane-line", - "plant-fill", - "plant-line", - "play-circle-fill", - "play-circle-line", - "play-fill", - "play-line", - "play-list-2-fill", - "play-list-2-line", - "play-list-add-fill", - "play-list-add-line", - "play-list-fill", - "play-list-line", - "play-mini-fill", - "play-mini-line", - "playstation-fill", - "playstation-line", - "plug-2-fill", - "plug-2-line", - "plug-fill", - "plug-line", - "polaroid-2-fill", - "polaroid-2-line", - "polaroid-fill", - "polaroid-line", - "police-car-fill", - "police-car-line", - "price-tag-2-fill", - "price-tag-2-line", - "price-tag-3-fill", - "price-tag-3-line", - "price-tag-fill", - "price-tag-line", - "printer-cloud-fill", - "printer-cloud-line", - "printer-fill", - "printer-line", - "product-hunt-fill", - "product-hunt-line", - "profile-fill", - "profile-line", - "projector-2-fill", - "projector-2-line", - "projector-fill", - "projector-line", - "psychotherapy-fill", - "psychotherapy-line", - "pulse-fill", - "pulse-line", - "pushpin-2-fill", - "pushpin-2-line", - "pushpin-fill", - "pushpin-line", - "qq-fill", - "qq-line", - "qr-code-fill", - "qr-code-line", - "qr-scan-2-fill", - "qr-scan-2-line", - "qr-scan-fill", - "qr-scan-line", - "question-answer-fill", - "question-answer-line", - "question-fill", - "question-line", - "question-mark", - "questionnaire-fill", - "questionnaire-line", - "quill-pen-fill", - "quill-pen-line", - "radar-fill", - "radar-line", - "radio-2-fill", - "radio-2-line", - "radio-button-fill", - "radio-button-line", - "radio-fill", - "radio-line", - "rainbow-fill", - "rainbow-line", - "rainy-fill", - "rainy-line", - "reactjs-fill", - "reactjs-line", - "record-circle-fill", - "record-circle-line", - "record-mail-fill", - "record-mail-line", - "recycle-fill", - "recycle-line", - "red-packet-fill", - "red-packet-line", - "reddit-fill", - "reddit-line", - "refresh-fill", - "refresh-line", - "refund-2-fill", - "refund-2-line", - "refund-fill", - "refund-line", - "registered-fill", - "registered-line", - "remixicon-fill", - "remixicon-line", - "remote-control-2-fill", - "remote-control-2-line", - "remote-control-fill", - "remote-control-line", - "repeat-2-fill", - "repeat-2-line", - "repeat-fill", - "repeat-line", - "repeat-one-fill", - "repeat-one-line", - "reply-all-fill", - "reply-all-line", - "reply-fill", - "reply-line", - "reserved-fill", - "reserved-line", - "rest-time-fill", - "rest-time-line", - "restart-fill", - "restart-line", - "restaurant-2-fill", - "restaurant-2-line", - "restaurant-fill", - "restaurant-line", - "rewind-fill", - "rewind-line", - "rewind-mini-fill", - "rewind-mini-line", - "rhythm-fill", - "rhythm-line", - "riding-fill", - "riding-line", - "road-map-fill", - "road-map-line", - "roadster-fill", - "roadster-line", - "robot-fill", - "robot-line", - "rocket-2-fill", - "rocket-2-line", - "rocket-fill", - "rocket-line", - "rotate-lock-fill", - "rotate-lock-line", - "rounded-corner", - "route-fill", - "route-line", - "router-fill", - "router-line", - "rss-fill", - "rss-line", - "ruler-2-fill", - "ruler-2-line", - "ruler-fill", - "ruler-line", - "run-fill", - "run-line", - "safari-fill", - "safari-line", - "safe-2-fill", - "safe-2-line", - "safe-fill", - "safe-line", - "sailboat-fill", - "sailboat-line", - "save-2-fill", - "save-2-line", - "save-3-fill", - "save-3-line", - "save-fill", - "save-line", - "scales-2-fill", - "scales-2-line", - "scales-3-fill", - "scales-3-line", - "scales-fill", - "scales-line", - "scan-2-fill", - "scan-2-line", - "scan-fill", - "scan-line", - "scissors-2-fill", - "scissors-2-line", - "scissors-cut-fill", - "scissors-cut-line", - "scissors-fill", - "scissors-line", - "screenshot-2-fill", - "screenshot-2-line", - "screenshot-fill", - "screenshot-line", - "sd-card-fill", - "sd-card-line", - "sd-card-mini-fill", - "sd-card-mini-line", - "search-2-fill", - "search-2-line", - "search-eye-fill", - "search-eye-line", - "search-fill", - "search-line", - "secure-payment-fill", - "secure-payment-line", - "seedling-fill", - "seedling-line", - "send-backward", - "send-plane-2-fill", - "send-plane-2-line", - "send-plane-fill", - "send-plane-line", - "send-to-back", - "sensor-fill", - "sensor-line", - "separator", - "server-fill", - "server-line", - "service-fill", - "service-line", - "settings-2-fill", - "settings-2-line", - "settings-3-fill", - "settings-3-line", - "settings-4-fill", - "settings-4-line", - "settings-5-fill", - "settings-5-line", - "settings-6-fill", - "settings-6-line", - "settings-fill", - "settings-line", - "shape-2-fill", - "shape-2-line", - "shape-fill", - "shape-line", - "share-box-fill", - "share-box-line", - "share-circle-fill", - "share-circle-line", - "share-fill", - "share-forward-2-fill", - "share-forward-2-line", - "share-forward-box-fill", - "share-forward-box-line", - "share-forward-fill", - "share-forward-line", - "share-line", - "shield-check-fill", - "shield-check-line", - "shield-cross-fill", - "shield-cross-line", - "shield-fill", - "shield-flash-fill", - "shield-flash-line", - "shield-keyhole-fill", - "shield-keyhole-line", - "shield-line", - "shield-star-fill", - "shield-star-line", - "shield-user-fill", - "shield-user-line", - "ship-2-fill", - "ship-2-line", - "ship-fill", - "ship-line", - "shirt-fill", - "shirt-line", - "shopping-bag-2-fill", - "shopping-bag-2-line", - "shopping-bag-3-fill", - "shopping-bag-3-line", - "shopping-bag-fill", - "shopping-bag-line", - "shopping-basket-2-fill", - "shopping-basket-2-line", - "shopping-basket-fill", - "shopping-basket-line", - "shopping-cart-2-fill", - "shopping-cart-2-line", - "shopping-cart-fill", - "shopping-cart-line", - "showers-fill", - "showers-line", - "shuffle-fill", - "shuffle-line", - "shut-down-fill", - "shut-down-line", - "side-bar-fill", - "side-bar-line", - "signal-tower-fill", - "signal-tower-line", - "signal-wifi-1-fill", - "signal-wifi-1-line", - "signal-wifi-2-fill", - "signal-wifi-2-line", - "signal-wifi-3-fill", - "signal-wifi-3-line", - "signal-wifi-error-fill", - "signal-wifi-error-line", - "signal-wifi-fill", - "signal-wifi-line", - "signal-wifi-off-fill", - "signal-wifi-off-line", - "sim-card-2-fill", - "sim-card-2-line", - "sim-card-fill", - "sim-card-line", - "single-quotes-l", - "single-quotes-r", - "sip-fill", - "sip-line", - "skip-back-fill", - "skip-back-line", - "skip-back-mini-fill", - "skip-back-mini-line", - "skip-forward-fill", - "skip-forward-line", - "skip-forward-mini-fill", - "skip-forward-mini-line", - "skull-2-fill", - "skull-2-line", - "skull-fill", - "skull-line", - "skype-fill", - "skype-line", - "slack-fill", - "slack-line", - "slice-fill", - "slice-line", - "slideshow-2-fill", - "slideshow-2-line", - "slideshow-3-fill", - "slideshow-3-line", - "slideshow-4-fill", - "slideshow-4-line", - "slideshow-fill", - "slideshow-line", - "smartphone-fill", - "smartphone-line", - "snapchat-fill", - "snapchat-line", - "snowy-fill", - "snowy-line", - "sort-asc", - "sort-desc", - "sound-module-fill", - "sound-module-line", - "soundcloud-fill", - "soundcloud-line", - "space-ship-fill", - "space-ship-line", - "space", - "spam-2-fill", - "spam-2-line", - "spam-3-fill", - "spam-3-line", - "spam-fill", - "spam-line", - "speaker-2-fill", - "speaker-2-line", - "speaker-3-fill", - "speaker-3-line", - "speaker-fill", - "speaker-line", - "spectrum-fill", - "spectrum-line", - "speed-fill", - "speed-line", - "speed-mini-fill", - "speed-mini-line", - "split-cells-horizontal", - "split-cells-vertical", - "spotify-fill", - "spotify-line", - "spy-fill", - "spy-line", - "stack-fill", - "stack-line", - "stack-overflow-fill", - "stack-overflow-line", - "stackshare-fill", - "stackshare-line", - "star-fill", - "star-half-fill", - "star-half-line", - "star-half-s-fill", - "star-half-s-line", - "star-line", - "star-s-fill", - "star-s-line", - "star-smile-fill", - "star-smile-line", - "steam-fill", - "steam-line", - "steering-2-fill", - "steering-2-line", - "steering-fill", - "steering-line", - "stethoscope-fill", - "stethoscope-line", - "sticky-note-2-fill", - "sticky-note-2-line", - "sticky-note-fill", - "sticky-note-line", - "stock-fill", - "stock-line", - "stop-circle-fill", - "stop-circle-line", - "stop-fill", - "stop-line", - "stop-mini-fill", - "stop-mini-line", - "store-2-fill", - "store-2-line", - "store-3-fill", - "store-3-line", - "store-fill", - "store-line", - "strikethrough-2", - "strikethrough", - "subscript-2", - "subscript", - "subtract-fill", - "subtract-line", - "subway-fill", - "subway-line", - "subway-wifi-fill", - "subway-wifi-line", - "suitcase-2-fill", - "suitcase-2-line", - "suitcase-3-fill", - "suitcase-3-line", - "suitcase-fill", - "suitcase-line", - "sun-cloudy-fill", - "sun-cloudy-line", - "sun-fill", - "sun-foggy-fill", - "sun-foggy-line", - "sun-line", - "superscript-2", - "superscript", - "surgical-mask-fill", - "surgical-mask-line", - "surround-sound-fill", - "surround-sound-line", - "survey-fill", - "survey-line", - "swap-box-fill", - "swap-box-line", - "swap-fill", - "swap-line", - "switch-fill", - "switch-line", - "sword-fill", - "sword-line", - "syringe-fill", - "syringe-line", - "t-box-fill", - "t-box-line", - "t-shirt-2-fill", - "t-shirt-2-line", - "t-shirt-air-fill", - "t-shirt-air-line", - "t-shirt-fill", - "t-shirt-line", - "table-2", - "table-alt-fill", - "table-alt-line", - "table-fill", - "table-line", - "tablet-fill", - "tablet-line", - "takeaway-fill", - "takeaway-line", - "taobao-fill", - "taobao-line", - "tape-fill", - "tape-line", - "task-fill", - "task-line", - "taxi-fill", - "taxi-line", - "taxi-wifi-fill", - "taxi-wifi-line", - "team-fill", - "team-line", - "telegram-fill", - "telegram-line", - "temp-cold-fill", - "temp-cold-line", - "temp-hot-fill", - "temp-hot-line", - "terminal-box-fill", - "terminal-box-line", - "terminal-fill", - "terminal-line", - "terminal-window-fill", - "terminal-window-line", - "test-tube-fill", - "test-tube-line", - "text-direction-l", - "text-direction-r", - "text-spacing", - "text-wrap", - "text", - "thermometer-fill", - "thermometer-line", - "thumb-down-fill", - "thumb-down-line", - "thumb-up-fill", - "thumb-up-line", - "thunderstorms-fill", - "thunderstorms-line", - "ticket-2-fill", - "ticket-2-line", - "ticket-fill", - "ticket-line", - "time-fill", - "time-line", - "timer-2-fill", - "timer-2-line", - "timer-fill", - "timer-flash-fill", - "timer-flash-line", - "timer-line", - "todo-fill", - "todo-line", - "toggle-fill", - "toggle-line", - "tools-fill", - "tools-line", - "tornado-fill", - "tornado-line", - "trademark-fill", - "trademark-line", - "traffic-light-fill", - "traffic-light-line", - "train-fill", - "train-line", - "train-wifi-fill", - "train-wifi-line", - "translate-2", - "translate", - "travesti-fill", - "travesti-line", - "treasure-map-fill", - "treasure-map-line", - "trello-fill", - "trello-line", - "trophy-fill", - "trophy-line", - "truck-fill", - "truck-line", - "tumblr-fill", - "tumblr-line", - "tv-2-fill", - "tv-2-line", - "tv-fill", - "tv-line", - "twitch-fill", - "twitch-line", - "twitter-fill", - "twitter-line", - "typhoon-fill", - "typhoon-line", - "u-disk-fill", - "u-disk-line", - "ubuntu-fill", - "ubuntu-line", - "umbrella-fill", - "umbrella-line", - "underline", - "uninstall-fill", - "uninstall-line", - "unsplash-fill", - "unsplash-line", - "upload-2-fill", - "upload-2-line", - "upload-cloud-2-fill", - "upload-cloud-2-line", - "upload-cloud-fill", - "upload-cloud-line", - "upload-fill", - "upload-line", - "usb-fill", - "usb-line", - "user-2-fill", - "user-2-line", - "user-3-fill", - "user-3-line", - "user-4-fill", - "user-4-line", - "user-5-fill", - "user-5-line", - "user-6-fill", - "user-6-line", - "user-add-fill", - "user-add-line", - "user-fill", - "user-follow-fill", - "user-follow-line", - "user-heart-fill", - "user-heart-line", - "user-line", - "user-location-fill", - "user-location-line", - "user-received-2-fill", - "user-received-2-line", - "user-received-fill", - "user-received-line", - "user-search-fill", - "user-search-line", - "user-settings-fill", - "user-settings-line", - "user-shared-2-fill", - "user-shared-2-line", - "user-shared-fill", - "user-shared-line", - "user-smile-fill", - "user-smile-line", - "user-star-fill", - "user-star-line", - "user-unfollow-fill", - "user-unfollow-line", - "user-voice-fill", - "user-voice-line", - "video-add-fill", - "video-add-line", - "video-chat-fill", - "video-chat-line", - "video-download-fill", - "video-download-line", - "video-fill", - "video-line", - "video-upload-fill", - "video-upload-line", - "vidicon-2-fill", - "vidicon-2-line", - "vidicon-fill", - "vidicon-line", - "vimeo-fill", - "vimeo-line", - "vip-crown-2-fill", - "vip-crown-2-line", - "vip-crown-fill", - "vip-crown-line", - "vip-diamond-fill", - "vip-diamond-line", - "vip-fill", - "vip-line", - "virus-fill", - "virus-line", - "visa-fill", - "visa-line", - "voice-recognition-fill", - "voice-recognition-line", - "voiceprint-fill", - "voiceprint-line", - "volume-down-fill", - "volume-down-line", - "volume-mute-fill", - "volume-mute-line", - "volume-off-vibrate-fill", - "volume-off-vibrate-line", - "volume-up-fill", - "volume-up-line", - "volume-vibrate-fill", - "volume-vibrate-line", - "vuejs-fill", - "vuejs-line", - "walk-fill", - "walk-line", - "wallet-2-fill", - "wallet-2-line", - "wallet-3-fill", - "wallet-3-line", - "wallet-fill", - "wallet-line", - "water-flash-fill", - "water-flash-line", - "webcam-fill", - "webcam-line", - "wechat-2-fill", - "wechat-2-line", - "wechat-fill", - "wechat-line", - "wechat-pay-fill", - "wechat-pay-line", - "weibo-fill", - "weibo-line", - "whatsapp-fill", - "whatsapp-line", - "wheelchair-fill", - "wheelchair-line", - "wifi-fill", - "wifi-line", - "wifi-off-fill", - "wifi-off-line", - "window-2-fill", - "window-2-line", - "window-fill", - "window-line", - "windows-fill", - "windows-line", - "windy-fill", - "windy-line", - "wireless-charging-fill", - "wireless-charging-line", - "women-fill", - "women-line", - "wubi-input", - "xbox-fill", - "xbox-line", - "xing-fill", - "xing-line", - "youtube-fill", - "youtube-line", - "zcool-fill", - "zcool-line", - "zhihu-fill", - "zhihu-line", - "zoom-in-fill", - "zoom-in-line", - "zoom-out-fill", - "zoom-out-line", - "zzz-fill", - "zzz-line", -]; + '24-hours-fill', + '24-hours-line', + '4k-fill', + '4k-line', + 'a-b', + 'account-box-fill', + 'account-box-line', + 'account-circle-fill', + 'account-circle-line', + 'account-pin-box-fill', + 'account-pin-box-line', + 'account-pin-circle-fill', + 'account-pin-circle-line', + 'add-box-fill', + 'add-box-line', + 'add-circle-fill', + 'add-circle-line', + 'add-fill', + 'add-line', + 'admin-fill', + 'admin-line', + 'airplay-fill', + 'airplay-line', + 'alarm-fill', + 'alarm-line', + 'alarm-warning-fill', + 'alarm-warning-line', + 'album-fill', + 'album-line', + 'alert-fill', + 'alert-line', + 'aliens-fill', + 'aliens-line', + 'align-bottom', + 'align-center', + 'align-justify', + 'align-left', + 'align-right', + 'align-top', + 'align-vertically', + 'alipay-fill', + 'alipay-line', + 'amazon-fill', + 'amazon-line', + 'anchor-fill', + 'anchor-line', + 'ancient-gate-fill', + 'ancient-gate-line', + 'ancient-pavilion-fill', + 'ancient-pavilion-line', + 'android-fill', + 'android-line', + 'angularjs-fill', + 'angularjs-line', + 'anticlockwise-2-fill', + 'anticlockwise-2-line', + 'anticlockwise-fill', + 'anticlockwise-line', + 'app-store-fill', + 'app-store-line', + 'apple-fill', + 'apple-line', + 'apps-2-fill', + 'apps-2-line', + 'apps-fill', + 'apps-line', + 'archive-drawer-fill', + 'archive-drawer-line', + 'archive-fill', + 'archive-line', + 'arrow-down-circle-fill', + 'arrow-down-circle-line', + 'arrow-down-fill', + 'arrow-down-line', + 'arrow-down-s-fill', + 'arrow-down-s-line', + 'arrow-drop-down-fill', + 'arrow-drop-down-line', + 'arrow-drop-left-fill', + 'arrow-drop-left-line', + 'arrow-drop-right-fill', + 'arrow-drop-right-line', + 'arrow-drop-up-fill', + 'arrow-drop-up-line', + 'arrow-go-back-fill', + 'arrow-go-back-line', + 'arrow-go-forward-fill', + 'arrow-go-forward-line', + 'arrow-left-circle-fill', + 'arrow-left-circle-line', + 'arrow-left-down-fill', + 'arrow-left-down-line', + 'arrow-left-fill', + 'arrow-left-line', + 'arrow-left-right-fill', + 'arrow-left-right-line', + 'arrow-left-s-fill', + 'arrow-left-s-line', + 'arrow-left-up-fill', + 'arrow-left-up-line', + 'arrow-right-circle-fill', + 'arrow-right-circle-line', + 'arrow-right-down-fill', + 'arrow-right-down-line', + 'arrow-right-fill', + 'arrow-right-line', + 'arrow-right-s-fill', + 'arrow-right-s-line', + 'arrow-right-up-fill', + 'arrow-right-up-line', + 'arrow-up-circle-fill', + 'arrow-up-circle-line', + 'arrow-up-down-fill', + 'arrow-up-down-line', + 'arrow-up-fill', + 'arrow-up-line', + 'arrow-up-s-fill', + 'arrow-up-s-line', + 'artboard-2-fill', + 'artboard-2-line', + 'artboard-fill', + 'artboard-line', + 'article-fill', + 'article-line', + 'aspect-ratio-fill', + 'aspect-ratio-line', + 'asterisk', + 'at-fill', + 'at-line', + 'attachment-2', + 'attachment-fill', + 'attachment-line', + 'auction-fill', + 'auction-line', + 'award-fill', + 'award-line', + 'baidu-fill', + 'baidu-line', + 'ball-pen-fill', + 'ball-pen-line', + 'bank-card-2-fill', + 'bank-card-2-line', + 'bank-card-fill', + 'bank-card-line', + 'bank-fill', + 'bank-line', + 'bar-chart-2-fill', + 'bar-chart-2-line', + 'bar-chart-box-fill', + 'bar-chart-box-line', + 'bar-chart-fill', + 'bar-chart-grouped-fill', + 'bar-chart-grouped-line', + 'bar-chart-horizontal-fill', + 'bar-chart-horizontal-line', + 'bar-chart-line', + 'barcode-box-fill', + 'barcode-box-line', + 'barcode-fill', + 'barcode-line', + 'barricade-fill', + 'barricade-line', + 'base-station-fill', + 'base-station-line', + 'basketball-fill', + 'basketball-line', + 'battery-2-charge-fill', + 'battery-2-charge-line', + 'battery-2-fill', + 'battery-2-line', + 'battery-charge-fill', + 'battery-charge-line', + 'battery-fill', + 'battery-line', + 'battery-low-fill', + 'battery-low-line', + 'battery-saver-fill', + 'battery-saver-line', + 'battery-share-fill', + 'battery-share-line', + 'bear-smile-fill', + 'bear-smile-line', + 'behance-fill', + 'behance-line', + 'bell-fill', + 'bell-line', + 'bike-fill', + 'bike-line', + 'bilibili-fill', + 'bilibili-line', + 'bill-fill', + 'bill-line', + 'billiards-fill', + 'billiards-line', + 'bit-coin-fill', + 'bit-coin-line', + 'blaze-fill', + 'blaze-line', + 'bluetooth-connect-fill', + 'bluetooth-connect-line', + 'bluetooth-fill', + 'bluetooth-line', + 'blur-off-fill', + 'blur-off-line', + 'body-scan-fill', + 'body-scan-line', + 'bold', + 'book-2-fill', + 'book-2-line', + 'book-3-fill', + 'book-3-line', + 'book-fill', + 'book-line', + 'book-mark-fill', + 'book-mark-line', + 'book-open-fill', + 'book-open-line', + 'book-read-fill', + 'book-read-line', + 'booklet-fill', + 'booklet-line', + 'bookmark-2-fill', + 'bookmark-2-line', + 'bookmark-3-fill', + 'bookmark-3-line', + 'bookmark-fill', + 'bookmark-line', + 'boxing-fill', + 'boxing-line', + 'braces-fill', + 'braces-line', + 'brackets-fill', + 'brackets-line', + 'briefcase-2-fill', + 'briefcase-2-line', + 'briefcase-3-fill', + 'briefcase-3-line', + 'briefcase-4-fill', + 'briefcase-4-line', + 'briefcase-5-fill', + 'briefcase-5-line', + 'briefcase-fill', + 'briefcase-line', + 'bring-forward', + 'bring-to-front', + 'broadcast-fill', + 'broadcast-line', + 'brush-2-fill', + 'brush-2-line', + 'brush-3-fill', + 'brush-3-line', + 'brush-4-fill', + 'brush-4-line', + 'brush-fill', + 'brush-line', + 'bubble-chart-fill', + 'bubble-chart-line', + 'bug-2-fill', + 'bug-2-line', + 'bug-fill', + 'bug-line', + 'building-2-fill', + 'building-2-line', + 'building-3-fill', + 'building-3-line', + 'building-4-fill', + 'building-4-line', + 'building-fill', + 'building-line', + 'bus-2-fill', + 'bus-2-line', + 'bus-fill', + 'bus-line', + 'bus-wifi-fill', + 'bus-wifi-line', + 'cactus-fill', + 'cactus-line', + 'cake-2-fill', + 'cake-2-line', + 'cake-3-fill', + 'cake-3-line', + 'cake-fill', + 'cake-line', + 'calculator-fill', + 'calculator-line', + 'calendar-2-fill', + 'calendar-2-line', + 'calendar-check-fill', + 'calendar-check-line', + 'calendar-event-fill', + 'calendar-event-line', + 'calendar-fill', + 'calendar-line', + 'calendar-todo-fill', + 'calendar-todo-line', + 'camera-2-fill', + 'camera-2-line', + 'camera-3-fill', + 'camera-3-line', + 'camera-fill', + 'camera-lens-fill', + 'camera-lens-line', + 'camera-line', + 'camera-off-fill', + 'camera-off-line', + 'camera-switch-fill', + 'camera-switch-line', + 'capsule-fill', + 'capsule-line', + 'car-fill', + 'car-line', + 'car-washing-fill', + 'car-washing-line', + 'caravan-fill', + 'caravan-line', + 'cast-fill', + 'cast-line', + 'cellphone-fill', + 'cellphone-line', + 'celsius-fill', + 'celsius-line', + 'centos-fill', + 'centos-line', + 'character-recognition-fill', + 'character-recognition-line', + 'charging-pile-2-fill', + 'charging-pile-2-line', + 'charging-pile-fill', + 'charging-pile-line', + 'chat-1-fill', + 'chat-1-line', + 'chat-2-fill', + 'chat-2-line', + 'chat-3-fill', + 'chat-3-line', + 'chat-4-fill', + 'chat-4-line', + 'chat-check-fill', + 'chat-check-line', + 'chat-delete-fill', + 'chat-delete-line', + 'chat-download-fill', + 'chat-download-line', + 'chat-follow-up-fill', + 'chat-follow-up-line', + 'chat-forward-fill', + 'chat-forward-line', + 'chat-heart-fill', + 'chat-heart-line', + 'chat-history-fill', + 'chat-history-line', + 'chat-new-fill', + 'chat-new-line', + 'chat-off-fill', + 'chat-off-line', + 'chat-poll-fill', + 'chat-poll-line', + 'chat-private-fill', + 'chat-private-line', + 'chat-quote-fill', + 'chat-quote-line', + 'chat-settings-fill', + 'chat-settings-line', + 'chat-smile-2-fill', + 'chat-smile-2-line', + 'chat-smile-3-fill', + 'chat-smile-3-line', + 'chat-smile-fill', + 'chat-smile-line', + 'chat-upload-fill', + 'chat-upload-line', + 'chat-voice-fill', + 'chat-voice-line', + 'check-double-fill', + 'check-double-line', + 'check-fill', + 'check-line', + 'checkbox-blank-circle-fill', + 'checkbox-blank-circle-line', + 'checkbox-blank-fill', + 'checkbox-blank-line', + 'checkbox-circle-fill', + 'checkbox-circle-line', + 'checkbox-fill', + 'checkbox-indeterminate-fill', + 'checkbox-indeterminate-line', + 'checkbox-line', + 'checkbox-multiple-blank-fill', + 'checkbox-multiple-blank-line', + 'checkbox-multiple-fill', + 'checkbox-multiple-line', + 'china-railway-fill', + 'china-railway-line', + 'chrome-fill', + 'chrome-line', + 'clapperboard-fill', + 'clapperboard-line', + 'clipboard-fill', + 'clipboard-line', + 'clockwise-2-fill', + 'clockwise-2-line', + 'clockwise-fill', + 'clockwise-line', + 'close-circle-fill', + 'close-circle-line', + 'close-fill', + 'close-line', + 'closed-captioning-fill', + 'closed-captioning-line', + 'cloud-fill', + 'cloud-line', + 'cloud-off-fill', + 'cloud-off-line', + 'cloud-windy-fill', + 'cloud-windy-line', + 'cloudy-2-fill', + 'cloudy-2-line', + 'cloudy-fill', + 'cloudy-line', + 'code-box-fill', + 'code-box-line', + 'code-fill', + 'code-line', + 'code-s-fill', + 'code-s-line', + 'code-s-slash-fill', + 'code-s-slash-line', + 'code-view', + 'codepen-fill', + 'codepen-line', + 'coin-fill', + 'coin-line', + 'coins-fill', + 'coins-line', + 'collage-fill', + 'collage-line', + 'command-fill', + 'command-line', + 'community-fill', + 'community-line', + 'compass-2-fill', + 'compass-2-line', + 'compass-3-fill', + 'compass-3-line', + 'compass-4-fill', + 'compass-4-line', + 'compass-discover-fill', + 'compass-discover-line', + 'compass-fill', + 'compass-line', + 'compasses-2-fill', + 'compasses-2-line', + 'compasses-fill', + 'compasses-line', + 'computer-fill', + 'computer-line', + 'contacts-book-2-fill', + 'contacts-book-2-line', + 'contacts-book-fill', + 'contacts-book-line', + 'contacts-book-upload-fill', + 'contacts-book-upload-line', + 'contacts-fill', + 'contacts-line', + 'contrast-2-fill', + 'contrast-2-line', + 'contrast-drop-2-fill', + 'contrast-drop-2-line', + 'contrast-drop-fill', + 'contrast-drop-line', + 'contrast-fill', + 'contrast-line', + 'copper-coin-fill', + 'copper-coin-line', + 'copper-diamond-fill', + 'copper-diamond-line', + 'copyleft-fill', + 'copyleft-line', + 'copyright-fill', + 'copyright-line', + 'coreos-fill', + 'coreos-line', + 'coupon-2-fill', + 'coupon-2-line', + 'coupon-3-fill', + 'coupon-3-line', + 'coupon-4-fill', + 'coupon-4-line', + 'coupon-5-fill', + 'coupon-5-line', + 'coupon-fill', + 'coupon-line', + 'cpu-fill', + 'cpu-line', + 'creative-commons-by-fill', + 'creative-commons-by-line', + 'creative-commons-fill', + 'creative-commons-line', + 'creative-commons-nc-fill', + 'creative-commons-nc-line', + 'creative-commons-nd-fill', + 'creative-commons-nd-line', + 'creative-commons-sa-fill', + 'creative-commons-sa-line', + 'creative-commons-zero-fill', + 'creative-commons-zero-line', + 'criminal-fill', + 'criminal-line', + 'crop-2-fill', + 'crop-2-line', + 'crop-fill', + 'crop-line', + 'css3-fill', + 'css3-line', + 'cup-fill', + 'cup-line', + 'currency-fill', + 'currency-line', + 'cursor-fill', + 'cursor-line', + 'customer-service-2-fill', + 'customer-service-2-line', + 'customer-service-fill', + 'customer-service-line', + 'dashboard-2-fill', + 'dashboard-2-line', + 'dashboard-3-fill', + 'dashboard-3-line', + 'dashboard-fill', + 'dashboard-line', + 'database-2-fill', + 'database-2-line', + 'database-fill', + 'database-line', + 'delete-back-2-fill', + 'delete-back-2-line', + 'delete-back-fill', + 'delete-back-line', + 'delete-bin-2-fill', + 'delete-bin-2-line', + 'delete-bin-3-fill', + 'delete-bin-3-line', + 'delete-bin-4-fill', + 'delete-bin-4-line', + 'delete-bin-5-fill', + 'delete-bin-5-line', + 'delete-bin-6-fill', + 'delete-bin-6-line', + 'delete-bin-7-fill', + 'delete-bin-7-line', + 'delete-bin-fill', + 'delete-bin-line', + 'delete-column', + 'delete-row', + 'device-fill', + 'device-line', + 'device-recover-fill', + 'device-recover-line', + 'dingding-fill', + 'dingding-line', + 'direction-fill', + 'direction-line', + 'disc-fill', + 'disc-line', + 'discord-fill', + 'discord-line', + 'discuss-fill', + 'discuss-line', + 'dislike-fill', + 'dislike-line', + 'disqus-fill', + 'disqus-line', + 'divide-fill', + 'divide-line', + 'donut-chart-fill', + 'donut-chart-line', + 'door-closed-fill', + 'door-closed-line', + 'door-fill', + 'door-line', + 'door-lock-box-fill', + 'door-lock-box-line', + 'door-lock-fill', + 'door-lock-line', + 'door-open-fill', + 'door-open-line', + 'dossier-fill', + 'dossier-line', + 'douban-fill', + 'douban-line', + 'double-quotes-l', + 'double-quotes-r', + 'download-2-fill', + 'download-2-line', + 'download-cloud-2-fill', + 'download-cloud-2-line', + 'download-cloud-fill', + 'download-cloud-line', + 'download-fill', + 'download-line', + 'draft-fill', + 'draft-line', + 'drag-drop-fill', + 'drag-drop-line', + 'drag-move-2-fill', + 'drag-move-2-line', + 'drag-move-fill', + 'drag-move-line', + 'dribbble-fill', + 'dribbble-line', + 'drive-fill', + 'drive-line', + 'drizzle-fill', + 'drizzle-line', + 'drop-fill', + 'drop-line', + 'dropbox-fill', + 'dropbox-line', + 'dual-sim-1-fill', + 'dual-sim-1-line', + 'dual-sim-2-fill', + 'dual-sim-2-line', + 'dv-fill', + 'dv-line', + 'dvd-fill', + 'dvd-line', + 'e-bike-2-fill', + 'e-bike-2-line', + 'e-bike-fill', + 'e-bike-line', + 'earth-fill', + 'earth-line', + 'earthquake-fill', + 'earthquake-line', + 'edge-fill', + 'edge-line', + 'edit-2-fill', + 'edit-2-line', + 'edit-box-fill', + 'edit-box-line', + 'edit-circle-fill', + 'edit-circle-line', + 'edit-fill', + 'edit-line', + 'eject-fill', + 'eject-line', + 'emotion-2-fill', + 'emotion-2-line', + 'emotion-fill', + 'emotion-happy-fill', + 'emotion-happy-line', + 'emotion-laugh-fill', + 'emotion-laugh-line', + 'emotion-line', + 'emotion-normal-fill', + 'emotion-normal-line', + 'emotion-sad-fill', + 'emotion-sad-line', + 'emotion-unhappy-fill', + 'emotion-unhappy-line', + 'empathize-fill', + 'empathize-line', + 'emphasis-cn', + 'emphasis', + 'english-input', + 'equalizer-fill', + 'equalizer-line', + 'eraser-fill', + 'eraser-line', + 'error-warning-fill', + 'error-warning-line', + 'evernote-fill', + 'evernote-line', + 'exchange-box-fill', + 'exchange-box-line', + 'exchange-cny-fill', + 'exchange-cny-line', + 'exchange-dollar-fill', + 'exchange-dollar-line', + 'exchange-fill', + 'exchange-funds-fill', + 'exchange-funds-line', + 'exchange-line', + 'external-link-fill', + 'external-link-line', + 'eye-2-fill', + 'eye-2-line', + 'eye-close-fill', + 'eye-close-line', + 'eye-fill', + 'eye-line', + 'eye-off-fill', + 'eye-off-line', + 'facebook-box-fill', + 'facebook-box-line', + 'facebook-circle-fill', + 'facebook-circle-line', + 'facebook-fill', + 'facebook-line', + 'fahrenheit-fill', + 'fahrenheit-line', + 'feedback-fill', + 'feedback-line', + 'file-2-fill', + 'file-2-line', + 'file-3-fill', + 'file-3-line', + 'file-4-fill', + 'file-4-line', + 'file-add-fill', + 'file-add-line', + 'file-chart-2-fill', + 'file-chart-2-line', + 'file-chart-fill', + 'file-chart-line', + 'file-cloud-fill', + 'file-cloud-line', + 'file-code-fill', + 'file-code-line', + 'file-copy-2-fill', + 'file-copy-2-line', + 'file-copy-fill', + 'file-copy-line', + 'file-damage-fill', + 'file-damage-line', + 'file-download-fill', + 'file-download-line', + 'file-edit-fill', + 'file-edit-line', + 'file-excel-2-fill', + 'file-excel-2-line', + 'file-excel-fill', + 'file-excel-line', + 'file-fill', + 'file-forbid-fill', + 'file-forbid-line', + 'file-gif-fill', + 'file-gif-line', + 'file-history-fill', + 'file-history-line', + 'file-hwp-fill', + 'file-hwp-line', + 'file-info-fill', + 'file-info-line', + 'file-line', + 'file-list-2-fill', + 'file-list-2-line', + 'file-list-3-fill', + 'file-list-3-line', + 'file-list-fill', + 'file-list-line', + 'file-lock-fill', + 'file-lock-line', + 'file-mark-fill', + 'file-mark-line', + 'file-music-fill', + 'file-music-line', + 'file-paper-2-fill', + 'file-paper-2-line', + 'file-paper-fill', + 'file-paper-line', + 'file-pdf-fill', + 'file-pdf-line', + 'file-ppt-2-fill', + 'file-ppt-2-line', + 'file-ppt-fill', + 'file-ppt-line', + 'file-reduce-fill', + 'file-reduce-line', + 'file-search-fill', + 'file-search-line', + 'file-settings-fill', + 'file-settings-line', + 'file-shield-2-fill', + 'file-shield-2-line', + 'file-shield-fill', + 'file-shield-line', + 'file-shred-fill', + 'file-shred-line', + 'file-text-fill', + 'file-text-line', + 'file-transfer-fill', + 'file-transfer-line', + 'file-unknow-fill', + 'file-unknow-line', + 'file-upload-fill', + 'file-upload-line', + 'file-user-fill', + 'file-user-line', + 'file-warning-fill', + 'file-warning-line', + 'file-word-2-fill', + 'file-word-2-line', + 'file-word-fill', + 'file-word-line', + 'file-zip-fill', + 'file-zip-line', + 'film-fill', + 'film-line', + 'filter-2-fill', + 'filter-2-line', + 'filter-3-fill', + 'filter-3-line', + 'filter-fill', + 'filter-line', + 'filter-off-fill', + 'filter-off-line', + 'find-replace-fill', + 'find-replace-line', + 'finder-fill', + 'finder-line', + 'fingerprint-2-fill', + 'fingerprint-2-line', + 'fingerprint-fill', + 'fingerprint-line', + 'fire-fill', + 'fire-line', + 'firefox-fill', + 'firefox-line', + 'first-aid-kit-fill', + 'first-aid-kit-line', + 'flag-2-fill', + 'flag-2-line', + 'flag-fill', + 'flag-line', + 'flashlight-fill', + 'flashlight-line', + 'flask-fill', + 'flask-line', + 'flight-land-fill', + 'flight-land-line', + 'flight-takeoff-fill', + 'flight-takeoff-line', + 'flood-fill', + 'flood-line', + 'flow-chart', + 'flutter-fill', + 'flutter-line', + 'focus-2-fill', + 'focus-2-line', + 'focus-3-fill', + 'focus-3-line', + 'focus-fill', + 'focus-line', + 'foggy-fill', + 'foggy-line', + 'folder-2-fill', + 'folder-2-line', + 'folder-3-fill', + 'folder-3-line', + 'folder-4-fill', + 'folder-4-line', + 'folder-5-fill', + 'folder-5-line', + 'folder-add-fill', + 'folder-add-line', + 'folder-chart-2-fill', + 'folder-chart-2-line', + 'folder-chart-fill', + 'folder-chart-line', + 'folder-download-fill', + 'folder-download-line', + 'folder-fill', + 'folder-forbid-fill', + 'folder-forbid-line', + 'folder-history-fill', + 'folder-history-line', + 'folder-info-fill', + 'folder-info-line', + 'folder-keyhole-fill', + 'folder-keyhole-line', + 'folder-line', + 'folder-lock-fill', + 'folder-lock-line', + 'folder-music-fill', + 'folder-music-line', + 'folder-open-fill', + 'folder-open-line', + 'folder-received-fill', + 'folder-received-line', + 'folder-reduce-fill', + 'folder-reduce-line', + 'folder-settings-fill', + 'folder-settings-line', + 'folder-shared-fill', + 'folder-shared-line', + 'folder-shield-2-fill', + 'folder-shield-2-line', + 'folder-shield-fill', + 'folder-shield-line', + 'folder-transfer-fill', + 'folder-transfer-line', + 'folder-unknow-fill', + 'folder-unknow-line', + 'folder-upload-fill', + 'folder-upload-line', + 'folder-user-fill', + 'folder-user-line', + 'folder-warning-fill', + 'folder-warning-line', + 'folder-zip-fill', + 'folder-zip-line', + 'folders-fill', + 'folders-line', + 'font-color', + 'font-size-2', + 'font-size', + 'football-fill', + 'football-line', + 'footprint-fill', + 'footprint-line', + 'forbid-2-fill', + 'forbid-2-line', + 'forbid-fill', + 'forbid-line', + 'format-clear', + 'fridge-fill', + 'fridge-line', + 'fullscreen-exit-fill', + 'fullscreen-exit-line', + 'fullscreen-fill', + 'fullscreen-line', + 'function-fill', + 'function-line', + 'functions', + 'funds-box-fill', + 'funds-box-line', + 'funds-fill', + 'funds-line', + 'gallery-fill', + 'gallery-line', + 'gallery-upload-fill', + 'gallery-upload-line', + 'game-fill', + 'game-line', + 'gamepad-fill', + 'gamepad-line', + 'gas-station-fill', + 'gas-station-line', + 'gatsby-fill', + 'gatsby-line', + 'genderless-fill', + 'genderless-line', + 'ghost-2-fill', + 'ghost-2-line', + 'ghost-fill', + 'ghost-line', + 'ghost-smile-fill', + 'ghost-smile-line', + 'gift-2-fill', + 'gift-2-line', + 'gift-fill', + 'gift-line', + 'git-branch-fill', + 'git-branch-line', + 'git-commit-fill', + 'git-commit-line', + 'git-merge-fill', + 'git-merge-line', + 'git-pull-request-fill', + 'git-pull-request-line', + 'git-repository-commits-fill', + 'git-repository-commits-line', + 'git-repository-fill', + 'git-repository-line', + 'git-repository-private-fill', + 'git-repository-private-line', + 'github-fill', + 'github-line', + 'gitlab-fill', + 'gitlab-line', + 'global-fill', + 'global-line', + 'globe-fill', + 'globe-line', + 'goblet-fill', + 'goblet-line', + 'google-fill', + 'google-line', + 'google-play-fill', + 'google-play-line', + 'government-fill', + 'government-line', + 'gps-fill', + 'gps-line', + 'gradienter-fill', + 'gradienter-line', + 'grid-fill', + 'grid-line', + 'group-2-fill', + 'group-2-line', + 'group-fill', + 'group-line', + 'guide-fill', + 'guide-line', + 'h-1', + 'h-2', + 'h-3', + 'h-4', + 'h-5', + 'h-6', + 'hail-fill', + 'hail-line', + 'hammer-fill', + 'hammer-line', + 'hand-coin-fill', + 'hand-coin-line', + 'hand-heart-fill', + 'hand-heart-line', + 'hand-sanitizer-fill', + 'hand-sanitizer-line', + 'handbag-fill', + 'handbag-line', + 'hard-drive-2-fill', + 'hard-drive-2-line', + 'hard-drive-fill', + 'hard-drive-line', + 'hashtag', + 'haze-2-fill', + 'haze-2-line', + 'haze-fill', + 'haze-line', + 'hd-fill', + 'hd-line', + 'heading', + 'headphone-fill', + 'headphone-line', + 'health-book-fill', + 'health-book-line', + 'heart-2-fill', + 'heart-2-line', + 'heart-3-fill', + 'heart-3-line', + 'heart-add-fill', + 'heart-add-line', + 'heart-fill', + 'heart-line', + 'heart-pulse-fill', + 'heart-pulse-line', + 'hearts-fill', + 'hearts-line', + 'heavy-showers-fill', + 'heavy-showers-line', + 'history-fill', + 'history-line', + 'home-2-fill', + 'home-2-line', + 'home-3-fill', + 'home-3-line', + 'home-4-fill', + 'home-4-line', + 'home-5-fill', + 'home-5-line', + 'home-6-fill', + 'home-6-line', + 'home-7-fill', + 'home-7-line', + 'home-8-fill', + 'home-8-line', + 'home-fill', + 'home-gear-fill', + 'home-gear-line', + 'home-heart-fill', + 'home-heart-line', + 'home-line', + 'home-smile-2-fill', + 'home-smile-2-line', + 'home-smile-fill', + 'home-smile-line', + 'home-wifi-fill', + 'home-wifi-line', + 'honor-of-kings-fill', + 'honor-of-kings-line', + 'honour-fill', + 'honour-line', + 'hospital-fill', + 'hospital-line', + 'hotel-bed-fill', + 'hotel-bed-line', + 'hotel-fill', + 'hotel-line', + 'hotspot-fill', + 'hotspot-line', + 'hq-fill', + 'hq-line', + 'html5-fill', + 'html5-line', + 'ie-fill', + 'ie-line', + 'image-2-fill', + 'image-2-line', + 'image-add-fill', + 'image-add-line', + 'image-edit-fill', + 'image-edit-line', + 'image-fill', + 'image-line', + 'inbox-archive-fill', + 'inbox-archive-line', + 'inbox-fill', + 'inbox-line', + 'inbox-unarchive-fill', + 'inbox-unarchive-line', + 'increase-decrease-fill', + 'increase-decrease-line', + 'indent-decrease', + 'indent-increase', + 'indeterminate-circle-fill', + 'indeterminate-circle-line', + 'information-fill', + 'information-line', + 'infrared-thermometer-fill', + 'infrared-thermometer-line', + 'ink-bottle-fill', + 'ink-bottle-line', + 'input-cursor-move', + 'input-method-fill', + 'input-method-line', + 'insert-column-left', + 'insert-column-right', + 'insert-row-bottom', + 'insert-row-top', + 'instagram-fill', + 'instagram-line', + 'install-fill', + 'install-line', + 'invision-fill', + 'invision-line', + 'italic', + 'kakao-talk-fill', + 'kakao-talk-line', + 'key-2-fill', + 'key-2-line', + 'key-fill', + 'key-line', + 'keyboard-box-fill', + 'keyboard-box-line', + 'keyboard-fill', + 'keyboard-line', + 'keynote-fill', + 'keynote-line', + 'knife-blood-fill', + 'knife-blood-line', + 'knife-fill', + 'knife-line', + 'landscape-fill', + 'landscape-line', + 'layout-2-fill', + 'layout-2-line', + 'layout-3-fill', + 'layout-3-line', + 'layout-4-fill', + 'layout-4-line', + 'layout-5-fill', + 'layout-5-line', + 'layout-6-fill', + 'layout-6-line', + 'layout-bottom-2-fill', + 'layout-bottom-2-line', + 'layout-bottom-fill', + 'layout-bottom-line', + 'layout-column-fill', + 'layout-column-line', + 'layout-fill', + 'layout-grid-fill', + 'layout-grid-line', + 'layout-left-2-fill', + 'layout-left-2-line', + 'layout-left-fill', + 'layout-left-line', + 'layout-line', + 'layout-masonry-fill', + 'layout-masonry-line', + 'layout-right-2-fill', + 'layout-right-2-line', + 'layout-right-fill', + 'layout-right-line', + 'layout-row-fill', + 'layout-row-line', + 'layout-top-2-fill', + 'layout-top-2-line', + 'layout-top-fill', + 'layout-top-line', + 'leaf-fill', + 'leaf-line', + 'lifebuoy-fill', + 'lifebuoy-line', + 'lightbulb-fill', + 'lightbulb-flash-fill', + 'lightbulb-flash-line', + 'lightbulb-line', + 'line-chart-fill', + 'line-chart-line', + 'line-fill', + 'line-height', + 'line-line', + 'link-m', + 'link-unlink-m', + 'link-unlink', + 'link', + 'linkedin-box-fill', + 'linkedin-box-line', + 'linkedin-fill', + 'linkedin-line', + 'links-fill', + 'links-line', + 'list-check-2', + 'list-check', + 'list-ordered', + 'list-settings-fill', + 'list-settings-line', + 'list-unordered', + 'live-fill', + 'live-line', + 'loader-2-fill', + 'loader-2-line', + 'loader-3-fill', + 'loader-3-line', + 'loader-4-fill', + 'loader-4-line', + 'loader-5-fill', + 'loader-5-line', + 'loader-fill', + 'loader-line', + 'lock-2-fill', + 'lock-2-line', + 'lock-fill', + 'lock-line', + 'lock-password-fill', + 'lock-password-line', + 'lock-unlock-fill', + 'lock-unlock-line', + 'login-box-fill', + 'login-box-line', + 'login-circle-fill', + 'login-circle-line', + 'logout-box-fill', + 'logout-box-line', + 'logout-box-r-fill', + 'logout-box-r-line', + 'logout-circle-fill', + 'logout-circle-line', + 'logout-circle-r-fill', + 'logout-circle-r-line', + 'luggage-cart-fill', + 'luggage-cart-line', + 'luggage-deposit-fill', + 'luggage-deposit-line', + 'lungs-fill', + 'lungs-line', + 'mac-fill', + 'mac-line', + 'macbook-fill', + 'macbook-line', + 'magic-fill', + 'magic-line', + 'mail-add-fill', + 'mail-add-line', + 'mail-check-fill', + 'mail-check-line', + 'mail-close-fill', + 'mail-close-line', + 'mail-download-fill', + 'mail-download-line', + 'mail-fill', + 'mail-forbid-fill', + 'mail-forbid-line', + 'mail-line', + 'mail-lock-fill', + 'mail-lock-line', + 'mail-open-fill', + 'mail-open-line', + 'mail-send-fill', + 'mail-send-line', + 'mail-settings-fill', + 'mail-settings-line', + 'mail-star-fill', + 'mail-star-line', + 'mail-unread-fill', + 'mail-unread-line', + 'mail-volume-fill', + 'mail-volume-line', + 'map-2-fill', + 'map-2-line', + 'map-fill', + 'map-line', + 'map-pin-2-fill', + 'map-pin-2-line', + 'map-pin-3-fill', + 'map-pin-3-line', + 'map-pin-4-fill', + 'map-pin-4-line', + 'map-pin-5-fill', + 'map-pin-5-line', + 'map-pin-add-fill', + 'map-pin-add-line', + 'map-pin-fill', + 'map-pin-line', + 'map-pin-range-fill', + 'map-pin-range-line', + 'map-pin-time-fill', + 'map-pin-time-line', + 'map-pin-user-fill', + 'map-pin-user-line', + 'mark-pen-fill', + 'mark-pen-line', + 'markdown-fill', + 'markdown-line', + 'markup-fill', + 'markup-line', + 'mastercard-fill', + 'mastercard-line', + 'mastodon-fill', + 'mastodon-line', + 'medal-2-fill', + 'medal-2-line', + 'medal-fill', + 'medal-line', + 'medicine-bottle-fill', + 'medicine-bottle-line', + 'medium-fill', + 'medium-line', + 'men-fill', + 'men-line', + 'mental-health-fill', + 'mental-health-line', + 'menu-2-fill', + 'menu-2-line', + 'menu-3-fill', + 'menu-3-line', + 'menu-4-fill', + 'menu-4-line', + 'menu-5-fill', + 'menu-5-line', + 'menu-add-fill', + 'menu-add-line', + 'menu-fill', + 'menu-fold-fill', + 'menu-fold-line', + 'menu-line', + 'menu-unfold-fill', + 'menu-unfold-line', + 'merge-cells-horizontal', + 'merge-cells-vertical', + 'message-2-fill', + 'message-2-line', + 'message-3-fill', + 'message-3-line', + 'message-fill', + 'message-line', + 'messenger-fill', + 'messenger-line', + 'meteor-fill', + 'meteor-line', + 'mic-2-fill', + 'mic-2-line', + 'mic-fill', + 'mic-line', + 'mic-off-fill', + 'mic-off-line', + 'mickey-fill', + 'mickey-line', + 'microscope-fill', + 'microscope-line', + 'microsoft-fill', + 'microsoft-line', + 'mind-map', + 'mini-program-fill', + 'mini-program-line', + 'mist-fill', + 'mist-line', + 'money-cny-box-fill', + 'money-cny-box-line', + 'money-cny-circle-fill', + 'money-cny-circle-line', + 'money-dollar-box-fill', + 'money-dollar-box-line', + 'money-dollar-circle-fill', + 'money-dollar-circle-line', + 'money-euro-box-fill', + 'money-euro-box-line', + 'money-euro-circle-fill', + 'money-euro-circle-line', + 'money-pound-box-fill', + 'money-pound-box-line', + 'money-pound-circle-fill', + 'money-pound-circle-line', + 'moon-clear-fill', + 'moon-clear-line', + 'moon-cloudy-fill', + 'moon-cloudy-line', + 'moon-fill', + 'moon-foggy-fill', + 'moon-foggy-line', + 'moon-line', + 'more-2-fill', + 'more-2-line', + 'more-fill', + 'more-line', + 'motorbike-fill', + 'motorbike-line', + 'mouse-fill', + 'mouse-line', + 'movie-2-fill', + 'movie-2-line', + 'movie-fill', + 'movie-line', + 'music-2-fill', + 'music-2-line', + 'music-fill', + 'music-line', + 'mv-fill', + 'mv-line', + 'navigation-fill', + 'navigation-line', + 'netease-cloud-music-fill', + 'netease-cloud-music-line', + 'netflix-fill', + 'netflix-line', + 'newspaper-fill', + 'newspaper-line', + 'node-tree', + 'notification-2-fill', + 'notification-2-line', + 'notification-3-fill', + 'notification-3-line', + 'notification-4-fill', + 'notification-4-line', + 'notification-badge-fill', + 'notification-badge-line', + 'notification-fill', + 'notification-line', + 'notification-off-fill', + 'notification-off-line', + 'npmjs-fill', + 'npmjs-line', + 'number-0', + 'number-1', + 'number-2', + 'number-3', + 'number-4', + 'number-5', + 'number-6', + 'number-7', + 'number-8', + 'number-9', + 'numbers-fill', + 'numbers-line', + 'nurse-fill', + 'nurse-line', + 'oil-fill', + 'oil-line', + 'omega', + 'open-arm-fill', + 'open-arm-line', + 'open-source-fill', + 'open-source-line', + 'opera-fill', + 'opera-line', + 'order-play-fill', + 'order-play-line', + 'organization-chart', + 'outlet-2-fill', + 'outlet-2-line', + 'outlet-fill', + 'outlet-line', + 'page-separator', + 'pages-fill', + 'pages-line', + 'paint-brush-fill', + 'paint-brush-line', + 'paint-fill', + 'paint-line', + 'palette-fill', + 'palette-line', + 'pantone-fill', + 'pantone-line', + 'paragraph', + 'parent-fill', + 'parent-line', + 'parentheses-fill', + 'parentheses-line', + 'parking-box-fill', + 'parking-box-line', + 'parking-fill', + 'parking-line', + 'passport-fill', + 'passport-line', + 'patreon-fill', + 'patreon-line', + 'pause-circle-fill', + 'pause-circle-line', + 'pause-fill', + 'pause-line', + 'pause-mini-fill', + 'pause-mini-line', + 'paypal-fill', + 'paypal-line', + 'pen-nib-fill', + 'pen-nib-line', + 'pencil-fill', + 'pencil-line', + 'pencil-ruler-2-fill', + 'pencil-ruler-2-line', + 'pencil-ruler-fill', + 'pencil-ruler-line', + 'percent-fill', + 'percent-line', + 'phone-camera-fill', + 'phone-camera-line', + 'phone-fill', + 'phone-find-fill', + 'phone-find-line', + 'phone-line', + 'phone-lock-fill', + 'phone-lock-line', + 'picture-in-picture-2-fill', + 'picture-in-picture-2-line', + 'picture-in-picture-exit-fill', + 'picture-in-picture-exit-line', + 'picture-in-picture-fill', + 'picture-in-picture-line', + 'pie-chart-2-fill', + 'pie-chart-2-line', + 'pie-chart-box-fill', + 'pie-chart-box-line', + 'pie-chart-fill', + 'pie-chart-line', + 'pin-distance-fill', + 'pin-distance-line', + 'ping-pong-fill', + 'ping-pong-line', + 'pinterest-fill', + 'pinterest-line', + 'pinyin-input', + 'pixelfed-fill', + 'pixelfed-line', + 'plane-fill', + 'plane-line', + 'plant-fill', + 'plant-line', + 'play-circle-fill', + 'play-circle-line', + 'play-fill', + 'play-line', + 'play-list-2-fill', + 'play-list-2-line', + 'play-list-add-fill', + 'play-list-add-line', + 'play-list-fill', + 'play-list-line', + 'play-mini-fill', + 'play-mini-line', + 'playstation-fill', + 'playstation-line', + 'plug-2-fill', + 'plug-2-line', + 'plug-fill', + 'plug-line', + 'polaroid-2-fill', + 'polaroid-2-line', + 'polaroid-fill', + 'polaroid-line', + 'police-car-fill', + 'police-car-line', + 'price-tag-2-fill', + 'price-tag-2-line', + 'price-tag-3-fill', + 'price-tag-3-line', + 'price-tag-fill', + 'price-tag-line', + 'printer-cloud-fill', + 'printer-cloud-line', + 'printer-fill', + 'printer-line', + 'product-hunt-fill', + 'product-hunt-line', + 'profile-fill', + 'profile-line', + 'projector-2-fill', + 'projector-2-line', + 'projector-fill', + 'projector-line', + 'psychotherapy-fill', + 'psychotherapy-line', + 'pulse-fill', + 'pulse-line', + 'pushpin-2-fill', + 'pushpin-2-line', + 'pushpin-fill', + 'pushpin-line', + 'qq-fill', + 'qq-line', + 'qr-code-fill', + 'qr-code-line', + 'qr-scan-2-fill', + 'qr-scan-2-line', + 'qr-scan-fill', + 'qr-scan-line', + 'question-answer-fill', + 'question-answer-line', + 'question-fill', + 'question-line', + 'question-mark', + 'questionnaire-fill', + 'questionnaire-line', + 'quill-pen-fill', + 'quill-pen-line', + 'radar-fill', + 'radar-line', + 'radio-2-fill', + 'radio-2-line', + 'radio-button-fill', + 'radio-button-line', + 'radio-fill', + 'radio-line', + 'rainbow-fill', + 'rainbow-line', + 'rainy-fill', + 'rainy-line', + 'reactjs-fill', + 'reactjs-line', + 'record-circle-fill', + 'record-circle-line', + 'record-mail-fill', + 'record-mail-line', + 'recycle-fill', + 'recycle-line', + 'red-packet-fill', + 'red-packet-line', + 'reddit-fill', + 'reddit-line', + 'refresh-fill', + 'refresh-line', + 'refund-2-fill', + 'refund-2-line', + 'refund-fill', + 'refund-line', + 'registered-fill', + 'registered-line', + 'remixicon-fill', + 'remixicon-line', + 'remote-control-2-fill', + 'remote-control-2-line', + 'remote-control-fill', + 'remote-control-line', + 'repeat-2-fill', + 'repeat-2-line', + 'repeat-fill', + 'repeat-line', + 'repeat-one-fill', + 'repeat-one-line', + 'reply-all-fill', + 'reply-all-line', + 'reply-fill', + 'reply-line', + 'reserved-fill', + 'reserved-line', + 'rest-time-fill', + 'rest-time-line', + 'restart-fill', + 'restart-line', + 'restaurant-2-fill', + 'restaurant-2-line', + 'restaurant-fill', + 'restaurant-line', + 'rewind-fill', + 'rewind-line', + 'rewind-mini-fill', + 'rewind-mini-line', + 'rhythm-fill', + 'rhythm-line', + 'riding-fill', + 'riding-line', + 'road-map-fill', + 'road-map-line', + 'roadster-fill', + 'roadster-line', + 'robot-fill', + 'robot-line', + 'rocket-2-fill', + 'rocket-2-line', + 'rocket-fill', + 'rocket-line', + 'rotate-lock-fill', + 'rotate-lock-line', + 'rounded-corner', + 'route-fill', + 'route-line', + 'router-fill', + 'router-line', + 'rss-fill', + 'rss-line', + 'ruler-2-fill', + 'ruler-2-line', + 'ruler-fill', + 'ruler-line', + 'run-fill', + 'run-line', + 'safari-fill', + 'safari-line', + 'safe-2-fill', + 'safe-2-line', + 'safe-fill', + 'safe-line', + 'sailboat-fill', + 'sailboat-line', + 'save-2-fill', + 'save-2-line', + 'save-3-fill', + 'save-3-line', + 'save-fill', + 'save-line', + 'scales-2-fill', + 'scales-2-line', + 'scales-3-fill', + 'scales-3-line', + 'scales-fill', + 'scales-line', + 'scan-2-fill', + 'scan-2-line', + 'scan-fill', + 'scan-line', + 'scissors-2-fill', + 'scissors-2-line', + 'scissors-cut-fill', + 'scissors-cut-line', + 'scissors-fill', + 'scissors-line', + 'screenshot-2-fill', + 'screenshot-2-line', + 'screenshot-fill', + 'screenshot-line', + 'sd-card-fill', + 'sd-card-line', + 'sd-card-mini-fill', + 'sd-card-mini-line', + 'search-2-fill', + 'search-2-line', + 'search-eye-fill', + 'search-eye-line', + 'search-fill', + 'search-line', + 'secure-payment-fill', + 'secure-payment-line', + 'seedling-fill', + 'seedling-line', + 'send-backward', + 'send-plane-2-fill', + 'send-plane-2-line', + 'send-plane-fill', + 'send-plane-line', + 'send-to-back', + 'sensor-fill', + 'sensor-line', + 'separator', + 'server-fill', + 'server-line', + 'service-fill', + 'service-line', + 'settings-2-fill', + 'settings-2-line', + 'settings-3-fill', + 'settings-3-line', + 'settings-4-fill', + 'settings-4-line', + 'settings-5-fill', + 'settings-5-line', + 'settings-6-fill', + 'settings-6-line', + 'settings-fill', + 'settings-line', + 'shape-2-fill', + 'shape-2-line', + 'shape-fill', + 'shape-line', + 'share-box-fill', + 'share-box-line', + 'share-circle-fill', + 'share-circle-line', + 'share-fill', + 'share-forward-2-fill', + 'share-forward-2-line', + 'share-forward-box-fill', + 'share-forward-box-line', + 'share-forward-fill', + 'share-forward-line', + 'share-line', + 'shield-check-fill', + 'shield-check-line', + 'shield-cross-fill', + 'shield-cross-line', + 'shield-fill', + 'shield-flash-fill', + 'shield-flash-line', + 'shield-keyhole-fill', + 'shield-keyhole-line', + 'shield-line', + 'shield-star-fill', + 'shield-star-line', + 'shield-user-fill', + 'shield-user-line', + 'ship-2-fill', + 'ship-2-line', + 'ship-fill', + 'ship-line', + 'shirt-fill', + 'shirt-line', + 'shopping-bag-2-fill', + 'shopping-bag-2-line', + 'shopping-bag-3-fill', + 'shopping-bag-3-line', + 'shopping-bag-fill', + 'shopping-bag-line', + 'shopping-basket-2-fill', + 'shopping-basket-2-line', + 'shopping-basket-fill', + 'shopping-basket-line', + 'shopping-cart-2-fill', + 'shopping-cart-2-line', + 'shopping-cart-fill', + 'shopping-cart-line', + 'showers-fill', + 'showers-line', + 'shuffle-fill', + 'shuffle-line', + 'shut-down-fill', + 'shut-down-line', + 'side-bar-fill', + 'side-bar-line', + 'signal-tower-fill', + 'signal-tower-line', + 'signal-wifi-1-fill', + 'signal-wifi-1-line', + 'signal-wifi-2-fill', + 'signal-wifi-2-line', + 'signal-wifi-3-fill', + 'signal-wifi-3-line', + 'signal-wifi-error-fill', + 'signal-wifi-error-line', + 'signal-wifi-fill', + 'signal-wifi-line', + 'signal-wifi-off-fill', + 'signal-wifi-off-line', + 'sim-card-2-fill', + 'sim-card-2-line', + 'sim-card-fill', + 'sim-card-line', + 'single-quotes-l', + 'single-quotes-r', + 'sip-fill', + 'sip-line', + 'skip-back-fill', + 'skip-back-line', + 'skip-back-mini-fill', + 'skip-back-mini-line', + 'skip-forward-fill', + 'skip-forward-line', + 'skip-forward-mini-fill', + 'skip-forward-mini-line', + 'skull-2-fill', + 'skull-2-line', + 'skull-fill', + 'skull-line', + 'skype-fill', + 'skype-line', + 'slack-fill', + 'slack-line', + 'slice-fill', + 'slice-line', + 'slideshow-2-fill', + 'slideshow-2-line', + 'slideshow-3-fill', + 'slideshow-3-line', + 'slideshow-4-fill', + 'slideshow-4-line', + 'slideshow-fill', + 'slideshow-line', + 'smartphone-fill', + 'smartphone-line', + 'snapchat-fill', + 'snapchat-line', + 'snowy-fill', + 'snowy-line', + 'sort-asc', + 'sort-desc', + 'sound-module-fill', + 'sound-module-line', + 'soundcloud-fill', + 'soundcloud-line', + 'space-ship-fill', + 'space-ship-line', + 'space', + 'spam-2-fill', + 'spam-2-line', + 'spam-3-fill', + 'spam-3-line', + 'spam-fill', + 'spam-line', + 'speaker-2-fill', + 'speaker-2-line', + 'speaker-3-fill', + 'speaker-3-line', + 'speaker-fill', + 'speaker-line', + 'spectrum-fill', + 'spectrum-line', + 'speed-fill', + 'speed-line', + 'speed-mini-fill', + 'speed-mini-line', + 'split-cells-horizontal', + 'split-cells-vertical', + 'spotify-fill', + 'spotify-line', + 'spy-fill', + 'spy-line', + 'stack-fill', + 'stack-line', + 'stack-overflow-fill', + 'stack-overflow-line', + 'stackshare-fill', + 'stackshare-line', + 'star-fill', + 'star-half-fill', + 'star-half-line', + 'star-half-s-fill', + 'star-half-s-line', + 'star-line', + 'star-s-fill', + 'star-s-line', + 'star-smile-fill', + 'star-smile-line', + 'steam-fill', + 'steam-line', + 'steering-2-fill', + 'steering-2-line', + 'steering-fill', + 'steering-line', + 'stethoscope-fill', + 'stethoscope-line', + 'sticky-note-2-fill', + 'sticky-note-2-line', + 'sticky-note-fill', + 'sticky-note-line', + 'stock-fill', + 'stock-line', + 'stop-circle-fill', + 'stop-circle-line', + 'stop-fill', + 'stop-line', + 'stop-mini-fill', + 'stop-mini-line', + 'store-2-fill', + 'store-2-line', + 'store-3-fill', + 'store-3-line', + 'store-fill', + 'store-line', + 'strikethrough-2', + 'strikethrough', + 'subscript-2', + 'subscript', + 'subtract-fill', + 'subtract-line', + 'subway-fill', + 'subway-line', + 'subway-wifi-fill', + 'subway-wifi-line', + 'suitcase-2-fill', + 'suitcase-2-line', + 'suitcase-3-fill', + 'suitcase-3-line', + 'suitcase-fill', + 'suitcase-line', + 'sun-cloudy-fill', + 'sun-cloudy-line', + 'sun-fill', + 'sun-foggy-fill', + 'sun-foggy-line', + 'sun-line', + 'superscript-2', + 'superscript', + 'surgical-mask-fill', + 'surgical-mask-line', + 'surround-sound-fill', + 'surround-sound-line', + 'survey-fill', + 'survey-line', + 'swap-box-fill', + 'swap-box-line', + 'swap-fill', + 'swap-line', + 'switch-fill', + 'switch-line', + 'sword-fill', + 'sword-line', + 'syringe-fill', + 'syringe-line', + 't-box-fill', + 't-box-line', + 't-shirt-2-fill', + 't-shirt-2-line', + 't-shirt-air-fill', + 't-shirt-air-line', + 't-shirt-fill', + 't-shirt-line', + 'table-2', + 'table-alt-fill', + 'table-alt-line', + 'table-fill', + 'table-line', + 'tablet-fill', + 'tablet-line', + 'takeaway-fill', + 'takeaway-line', + 'taobao-fill', + 'taobao-line', + 'tape-fill', + 'tape-line', + 'task-fill', + 'task-line', + 'taxi-fill', + 'taxi-line', + 'taxi-wifi-fill', + 'taxi-wifi-line', + 'team-fill', + 'team-line', + 'telegram-fill', + 'telegram-line', + 'temp-cold-fill', + 'temp-cold-line', + 'temp-hot-fill', + 'temp-hot-line', + 'terminal-box-fill', + 'terminal-box-line', + 'terminal-fill', + 'terminal-line', + 'terminal-window-fill', + 'terminal-window-line', + 'test-tube-fill', + 'test-tube-line', + 'text-direction-l', + 'text-direction-r', + 'text-spacing', + 'text-wrap', + 'text', + 'thermometer-fill', + 'thermometer-line', + 'thumb-down-fill', + 'thumb-down-line', + 'thumb-up-fill', + 'thumb-up-line', + 'thunderstorms-fill', + 'thunderstorms-line', + 'ticket-2-fill', + 'ticket-2-line', + 'ticket-fill', + 'ticket-line', + 'time-fill', + 'time-line', + 'timer-2-fill', + 'timer-2-line', + 'timer-fill', + 'timer-flash-fill', + 'timer-flash-line', + 'timer-line', + 'todo-fill', + 'todo-line', + 'toggle-fill', + 'toggle-line', + 'tools-fill', + 'tools-line', + 'tornado-fill', + 'tornado-line', + 'trademark-fill', + 'trademark-line', + 'traffic-light-fill', + 'traffic-light-line', + 'train-fill', + 'train-line', + 'train-wifi-fill', + 'train-wifi-line', + 'translate-2', + 'translate', + 'travesti-fill', + 'travesti-line', + 'treasure-map-fill', + 'treasure-map-line', + 'trello-fill', + 'trello-line', + 'trophy-fill', + 'trophy-line', + 'truck-fill', + 'truck-line', + 'tumblr-fill', + 'tumblr-line', + 'tv-2-fill', + 'tv-2-line', + 'tv-fill', + 'tv-line', + 'twitch-fill', + 'twitch-line', + 'twitter-fill', + 'twitter-line', + 'typhoon-fill', + 'typhoon-line', + 'u-disk-fill', + 'u-disk-line', + 'ubuntu-fill', + 'ubuntu-line', + 'umbrella-fill', + 'umbrella-line', + 'underline', + 'uninstall-fill', + 'uninstall-line', + 'unsplash-fill', + 'unsplash-line', + 'upload-2-fill', + 'upload-2-line', + 'upload-cloud-2-fill', + 'upload-cloud-2-line', + 'upload-cloud-fill', + 'upload-cloud-line', + 'upload-fill', + 'upload-line', + 'usb-fill', + 'usb-line', + 'user-2-fill', + 'user-2-line', + 'user-3-fill', + 'user-3-line', + 'user-4-fill', + 'user-4-line', + 'user-5-fill', + 'user-5-line', + 'user-6-fill', + 'user-6-line', + 'user-add-fill', + 'user-add-line', + 'user-fill', + 'user-follow-fill', + 'user-follow-line', + 'user-heart-fill', + 'user-heart-line', + 'user-line', + 'user-location-fill', + 'user-location-line', + 'user-received-2-fill', + 'user-received-2-line', + 'user-received-fill', + 'user-received-line', + 'user-search-fill', + 'user-search-line', + 'user-settings-fill', + 'user-settings-line', + 'user-shared-2-fill', + 'user-shared-2-line', + 'user-shared-fill', + 'user-shared-line', + 'user-smile-fill', + 'user-smile-line', + 'user-star-fill', + 'user-star-line', + 'user-unfollow-fill', + 'user-unfollow-line', + 'user-voice-fill', + 'user-voice-line', + 'video-add-fill', + 'video-add-line', + 'video-chat-fill', + 'video-chat-line', + 'video-download-fill', + 'video-download-line', + 'video-fill', + 'video-line', + 'video-upload-fill', + 'video-upload-line', + 'vidicon-2-fill', + 'vidicon-2-line', + 'vidicon-fill', + 'vidicon-line', + 'vimeo-fill', + 'vimeo-line', + 'vip-crown-2-fill', + 'vip-crown-2-line', + 'vip-crown-fill', + 'vip-crown-line', + 'vip-diamond-fill', + 'vip-diamond-line', + 'vip-fill', + 'vip-line', + 'virus-fill', + 'virus-line', + 'visa-fill', + 'visa-line', + 'voice-recognition-fill', + 'voice-recognition-line', + 'voiceprint-fill', + 'voiceprint-line', + 'volume-down-fill', + 'volume-down-line', + 'volume-mute-fill', + 'volume-mute-line', + 'volume-off-vibrate-fill', + 'volume-off-vibrate-line', + 'volume-up-fill', + 'volume-up-line', + 'volume-vibrate-fill', + 'volume-vibrate-line', + 'vuejs-fill', + 'vuejs-line', + 'walk-fill', + 'walk-line', + 'wallet-2-fill', + 'wallet-2-line', + 'wallet-3-fill', + 'wallet-3-line', + 'wallet-fill', + 'wallet-line', + 'water-flash-fill', + 'water-flash-line', + 'webcam-fill', + 'webcam-line', + 'wechat-2-fill', + 'wechat-2-line', + 'wechat-fill', + 'wechat-line', + 'wechat-pay-fill', + 'wechat-pay-line', + 'weibo-fill', + 'weibo-line', + 'whatsapp-fill', + 'whatsapp-line', + 'wheelchair-fill', + 'wheelchair-line', + 'wifi-fill', + 'wifi-line', + 'wifi-off-fill', + 'wifi-off-line', + 'window-2-fill', + 'window-2-line', + 'window-fill', + 'window-line', + 'windows-fill', + 'windows-line', + 'windy-fill', + 'windy-line', + 'wireless-charging-fill', + 'wireless-charging-line', + 'women-fill', + 'women-line', + 'wubi-input', + 'xbox-fill', + 'xbox-line', + 'xing-fill', + 'xing-line', + 'youtube-fill', + 'youtube-line', + 'zcool-fill', + 'zcool-line', + 'zhihu-fill', + 'zhihu-line', + 'zoom-in-fill', + 'zoom-in-line', + 'zoom-out-fill', + 'zoom-out-line', + 'zzz-fill', + 'zzz-line', +] module.exports = [ { - url: "/remixIcon/getList", - type: "post", + url: '/remixIcon/getList', + type: 'post', response(config) { - const { title, pageNo = 1, pageSize = 72 } = config.body; + const { title, pageNo = 1, pageSize = 72 } = config.body let mockList = data.filter((item) => { - if (title && item.indexOf(title) < 0) return false; - return true; - }); + if (title && item.indexOf(title) < 0) return false + return true + }) const pageList = mockList.filter( (item, index) => index < pageSize * pageNo && index >= pageSize * (pageNo - 1) - ); + ) return { code: 200, - msg: "success", + msg: 'success', totalCount: mockList.length, data: pageList, - }; + } }, }, -]; +] diff --git a/mock/controller/roleManagement.js b/mock/controller/roleManagement.js index f1f30d8..3a2079e 100644 --- a/mock/controller/roleManagement.js +++ b/mock/controller/roleManagement.js @@ -1,53 +1,53 @@ -const totalCount = 2; +const totalCount = 2 const List = [ { - id: "@id", - permission: "admin", + id: '@id', + permission: 'admin', }, { - id: "@id", - permission: "editor", + id: '@id', + permission: 'editor', }, -]; +] module.exports = [ { - url: "/roleManagement/getList", - type: "post", + url: '/roleManagement/getList', + type: 'post', response(config) { - const { title = "", pageNo = 1, pageSize = 20 } = config.body; + const { title = '', pageNo = 1, pageSize = 20 } = config.body let mockList = List.filter((item) => { - return !(title && item.title.indexOf(title) < 0); - }); + return !(title && item.title.indexOf(title) < 0) + }) const pageList = mockList.filter( (item, index) => index < pageSize * pageNo && index >= pageSize * (pageNo - 1) - ); + ) return { code: 200, - msg: "success", + msg: 'success', totalCount, data: pageList, - }; + } }, }, { - url: "/roleManagement/doEdit", - type: "post", + url: '/roleManagement/doEdit', + type: 'post', response() { return { code: 200, - msg: "模拟保存成功", - }; + msg: '模拟保存成功', + } }, }, { - url: "/roleManagement/doDelete", - type: "post", + url: '/roleManagement/doDelete', + type: 'post', response() { return { code: 200, - msg: "模拟删除成功", - }; + msg: '模拟删除成功', + } }, }, -]; +] diff --git a/mock/controller/router.js b/mock/controller/router.js index 20acf64..8561956 100644 --- a/mock/controller/router.js +++ b/mock/controller/router.js @@ -1,317 +1,317 @@ const data = [ { - path: "/", - component: "Layout", - redirect: "index", + path: '/', + component: 'Layout', + redirect: 'index', children: [ { - path: "index", - name: "Index", - component: "@/views/index/index", + path: 'index', + name: 'Index', + component: '@/views/index/index', meta: { - title: "首页", - icon: "home", + title: '首页', + icon: 'home', affix: true, }, }, ], }, { - path: "/personnelManagement", - component: "Layout", - redirect: "noRedirect", - name: "PersonnelManagement", - meta: { title: "人员", icon: "users-cog", permissions: ["admin"] }, + path: '/personnelManagement', + component: 'Layout', + redirect: 'noRedirect', + name: 'PersonnelManagement', + meta: { title: '人员', icon: 'users-cog', permissions: ['admin'] }, children: [ { - path: "userManagement", - name: "UserManagement", - component: "@/views/personnelManagement/userManagement/index", - meta: { title: "用户管理" }, + path: 'userManagement', + name: 'UserManagement', + component: '@/views/personnelManagement/userManagement/index', + meta: { title: '用户管理' }, }, { - path: "roleManagement", - name: "RoleManagement", - component: "@/views/personnelManagement/roleManagement/index", - meta: { title: "角色管理" }, + path: 'roleManagement', + name: 'RoleManagement', + component: '@/views/personnelManagement/roleManagement/index', + meta: { title: '角色管理' }, }, { - path: "menuManagement", - name: "MenuManagement", - component: "@/views/personnelManagement/menuManagement/index", - meta: { title: "菜单管理", badge: "New" }, + path: 'menuManagement', + name: 'MenuManagement', + component: '@/views/personnelManagement/menuManagement/index', + meta: { title: '菜单管理', badge: 'New' }, }, ], }, { - path: "/vab", - component: "Layout", - redirect: "noRedirect", - name: "Vab", + path: '/vab', + component: 'Layout', + redirect: 'noRedirect', + name: 'Vab', alwaysShow: true, - meta: { title: "组件", icon: "cloud" }, + meta: { title: '组件', icon: 'cloud' }, children: [ { - path: "permissions", - name: "Permission", - component: "@/views/vab/permissions/index", + path: 'permissions', + name: 'Permission', + component: '@/views/vab/permissions/index', meta: { - title: "权限控制", - permissions: ["admin", "editor"], - badge: "New", + title: '权限控制', + permissions: ['admin', 'editor'], + badge: 'New', }, }, { - path: "icon", - component: "EmptyLayout", - redirect: "noRedirect", - name: "Icon", + path: 'icon', + component: 'EmptyLayout', + redirect: 'noRedirect', + name: 'Icon', meta: { - title: "图标", - permissions: ["admin"], + title: '图标', + permissions: ['admin'], }, children: [ { - path: "awesomeIcon", - name: "AwesomeIcon", - component: "@/views/vab/icon/index", - meta: { title: "常规图标" }, + path: 'awesomeIcon', + name: 'AwesomeIcon', + component: '@/views/vab/icon/index', + meta: { title: '常规图标' }, }, { - path: "remixIcon", - name: "RemixIcon", - component: "@/views/vab/icon/remixIcon", - meta: { title: "小清新图标" }, + path: 'remixIcon', + name: 'RemixIcon', + component: '@/views/vab/icon/remixIcon', + meta: { title: '小清新图标' }, }, { - path: "colorfulIcon", - name: "ColorfulIcon", - component: "@/views/vab/icon/colorfulIcon", - meta: { title: "多彩图标" }, + path: 'colorfulIcon', + name: 'ColorfulIcon', + component: '@/views/vab/icon/colorfulIcon', + meta: { title: '多彩图标' }, }, ], }, { - path: "table", - component: "@/views/vab/table/index", - name: "Table", + path: 'table', + component: '@/views/vab/table/index', + name: 'Table', meta: { - title: "表格", - permissions: ["admin"], + title: '表格', + permissions: ['admin'], }, }, { - path: "map", - name: "Map", - component: "@/views/vab/map/index", - meta: { title: "地图", permissions: ["admin"], badge: "Pro" }, + path: 'map', + name: 'Map', + component: '@/views/vab/map/index', + meta: { title: '地图', permissions: ['admin'], badge: 'Pro' }, }, { - path: "webSocket", - name: "WebSocket", - component: "@/views/vab/webSocket/index", - meta: { title: "webSocket", permissions: ["admin"] }, + path: 'webSocket', + name: 'WebSocket', + component: '@/views/vab/webSocket/index', + meta: { title: 'webSocket', permissions: ['admin'] }, }, { - path: "form", - name: "Form", - component: "@/views/vab/form/index", - meta: { title: "表单", permissions: ["admin"] }, + path: 'form', + name: 'Form', + component: '@/views/vab/form/index', + meta: { title: '表单', permissions: ['admin'] }, }, { - path: "element", - name: "Element", - component: "@/views/vab/element/index", - meta: { title: "常用组件", permissions: ["admin"] }, + path: 'element', + name: 'Element', + component: '@/views/vab/element/index', + meta: { title: '常用组件', permissions: ['admin'] }, }, { - path: "tree", - name: "Tree", - component: "@/views/vab/tree/index", - meta: { title: "树", permissions: ["admin"] }, + path: 'tree', + name: 'Tree', + component: '@/views/vab/tree/index', + meta: { title: '树', permissions: ['admin'] }, }, { - path: "card", - name: "Card", - component: "@/views/vab/card/index", - meta: { title: "卡片", permissions: ["admin"] }, + path: 'card', + name: 'Card', + component: '@/views/vab/card/index', + meta: { title: '卡片', permissions: ['admin'] }, }, { - path: "verify", - name: "Verify", - component: "@/views/vab/verify/index", - meta: { title: "验证码", permissions: ["admin"] }, + path: 'verify', + name: 'Verify', + component: '@/views/vab/verify/index', + meta: { title: '验证码', permissions: ['admin'] }, }, { - path: "menu1", - component: "@/views/vab/nested/menu1/index", - name: "Menu1", + path: 'menu1', + component: '@/views/vab/nested/menu1/index', + name: 'Menu1', alwaysShow: true, meta: { - title: "嵌套路由 1", - permissions: ["admin"], + title: '嵌套路由 1', + permissions: ['admin'], }, children: [ { - path: "menu1-1", - name: "Menu1-1", + path: 'menu1-1', + name: 'Menu1-1', alwaysShow: true, - meta: { title: "嵌套路由 1-1" }, - component: "@/views/vab/nested/menu1/menu1-1/index", + meta: { title: '嵌套路由 1-1' }, + component: '@/views/vab/nested/menu1/menu1-1/index', children: [ { - path: "menu1-1-1", - name: "Menu1-1-1", - meta: { title: "嵌套路由 1-1-1" }, - component: "@/views/vab/nested/menu1/menu1-1/menu1-1-1/index", + path: 'menu1-1-1', + name: 'Menu1-1-1', + meta: { title: '嵌套路由 1-1-1' }, + component: '@/views/vab/nested/menu1/menu1-1/menu1-1-1/index', }, ], }, ], }, { - path: "magnifier", - name: "Magnifier", - component: "@/views/vab/magnifier/index", - meta: { title: "放大镜", permissions: ["admin"] }, + path: 'magnifier', + name: 'Magnifier', + component: '@/views/vab/magnifier/index', + meta: { title: '放大镜', permissions: ['admin'] }, }, { - path: "echarts", - name: "Echarts", - component: "@/views/vab/echarts/index", - meta: { title: "图表", permissions: ["admin"] }, + path: 'echarts', + name: 'Echarts', + component: '@/views/vab/echarts/index', + meta: { title: '图表', permissions: ['admin'] }, }, { - path: "loading", - name: "Loading", - component: "@/views/vab/loading/index", - meta: { title: "loading", permissions: ["admin"] }, + path: 'loading', + name: 'Loading', + component: '@/views/vab/loading/index', + meta: { title: 'loading', permissions: ['admin'] }, }, { - path: "player", - name: "Player", - component: "@/views/vab/player/index", - meta: { title: "视频播放器", permissions: ["admin"] }, + path: 'player', + name: 'Player', + component: '@/views/vab/player/index', + meta: { title: '视频播放器', permissions: ['admin'] }, }, { - path: "markdownEditor", - name: "MarkdownEditor", - component: "@/views/vab/markdownEditor/index", - meta: { title: "markdown编辑器", permissions: ["admin"] }, + path: 'markdownEditor', + name: 'MarkdownEditor', + component: '@/views/vab/markdownEditor/index', + meta: { title: 'markdown编辑器', permissions: ['admin'] }, }, { - path: "editor", - name: "Editor", - component: "@/views/vab/editor/index", - meta: { title: "富文本编辑器", permissions: ["admin"], badge: "New" }, + path: 'editor', + name: 'Editor', + component: '@/views/vab/editor/index', + meta: { title: '富文本编辑器', permissions: ['admin'], badge: 'New' }, }, { - path: "backToTop", - name: "BackToTop", - component: "@/views/vab/backToTop/index", - meta: { title: "返回顶部", permissions: ["admin"] }, + path: 'backToTop', + name: 'BackToTop', + component: '@/views/vab/backToTop/index', + meta: { title: '返回顶部', permissions: ['admin'] }, }, { - path: "lodash", - name: "Lodash", - component: "@/views/vab/lodash/index", - meta: { title: "lodash", permissions: ["admin"] }, + path: 'lodash', + name: 'Lodash', + component: '@/views/vab/lodash/index', + meta: { title: 'lodash', permissions: ['admin'] }, }, { - path: "imgComparison", - name: "ImgComparison", - component: "@/views/vab/imgComparison/index", - meta: { title: "图像拖拽比对", permissions: ["admin"] }, + path: 'imgComparison', + name: 'ImgComparison', + component: '@/views/vab/imgComparison/index', + meta: { title: '图像拖拽比对', permissions: ['admin'] }, }, { - path: "smallComponents", - name: "SmallComponents", - component: "@/views/vab/smallComponents/index", - meta: { title: "小组件", permissions: ["admin"] }, + path: 'smallComponents', + name: 'SmallComponents', + component: '@/views/vab/smallComponents/index', + meta: { title: '小组件', permissions: ['admin'] }, }, { - path: "upload", - name: "Upload", - component: "@/views/vab/upload/index", - meta: { title: "上传", permissions: ["admin"] }, + path: 'upload', + name: 'Upload', + component: '@/views/vab/upload/index', + meta: { title: '上传', permissions: ['admin'] }, }, { - path: "log", - name: "Log", - component: "@/views/vab/errorLog/index", - meta: { title: "错误日志模拟", permissions: ["admin"] }, + path: 'log', + name: 'Log', + component: '@/views/vab/errorLog/index', + meta: { title: '错误日志模拟', permissions: ['admin'] }, }, { - path: "more", - name: "More", - component: "@/views/vab/more/index", - meta: { title: "关于", permissions: ["admin"] }, + path: 'more', + name: 'More', + component: '@/views/vab/more/index', + meta: { title: '关于', permissions: ['admin'] }, }, ], }, { - path: "/mall", - component: "Layout", - redirect: "noRedirect", - name: "Mall", + path: '/mall', + component: 'Layout', + redirect: 'noRedirect', + name: 'Mall', meta: { - title: "商城", - icon: "shopping-cart", - permissions: ["admin"], + title: '商城', + icon: 'shopping-cart', + permissions: ['admin'], }, children: [ { - path: "pay", - name: "Pay", - component: "@/views/mall/pay/index", + path: 'pay', + name: 'Pay', + component: '@/views/mall/pay/index', meta: { - title: "支付", + title: '支付', noKeepAlive: true, }, children: null, }, { - path: "goodsList", - name: "GoodsList", - component: "@/views/mall/goodsList/index", + path: 'goodsList', + name: 'GoodsList', + component: '@/views/mall/goodsList/index', meta: { - title: "商品列表", + title: '商品列表', }, }, ], }, { - path: "/error", - component: "EmptyLayout", - redirect: "noRedirect", - name: "Error", - meta: { title: "错误页", icon: "bug" }, + path: '/error', + component: 'EmptyLayout', + redirect: 'noRedirect', + name: 'Error', + meta: { title: '错误页', icon: 'bug' }, children: [ { - path: "401", - name: "Error401", - component: "@/views/401", - meta: { title: "401" }, + path: '401', + name: 'Error401', + component: '@/views/401', + meta: { title: '401' }, }, { - path: "404", - name: "Error404", - component: "@/views/404", - meta: { title: "404" }, + path: '404', + name: 'Error404', + component: '@/views/404', + meta: { title: '404' }, }, ], }, -]; +] module.exports = [ { - url: "/menu/navigate", - type: "post", + url: '/menu/navigate', + type: 'post', response() { - return { code: 200, msg: "success", data: data }; + return { code: 200, msg: 'success', data: data } }, }, -]; +] diff --git a/mock/controller/table.js b/mock/controller/table.js index fa4c38e..264f493 100644 --- a/mock/controller/table.js +++ b/mock/controller/table.js @@ -1,88 +1,88 @@ -const { mock } = require("mockjs"); -const { handleRandomImage } = require("../utils"); +const { mock } = require('mockjs') +const { handleRandomImage } = require('../utils') -const List = []; -const count = 999; +const List = [] +const count = 999 for (let i = 0; i < count; i++) { List.push( mock({ - uuid: "@uuid", - id: "@id", - title: "@csentence(1, 2)", - "status|1": ["published", "draft", "deleted"], - author: "@cname", - datetime: "@datetime", - pageViews: "@integer(300, 5000)", + uuid: '@uuid', + id: '@id', + title: '@csentence(1, 2)', + 'status|1': ['published', 'draft', 'deleted'], + author: '@cname', + datetime: '@datetime', + pageViews: '@integer(300, 5000)', img: handleRandomImage(200, 200), smallImg: handleRandomImage(40, 40), - switch: "@boolean", - percent: "@integer(80,99)", + switch: '@boolean', + percent: '@integer(80,99)', }) - ); + ) } module.exports = [ { - url: "/table/getList", - type: "post", + url: '/table/getList', + type: 'post', response(config) { if (!config.body) { return { code: 200, - msg: "success", + msg: 'success', totalCount: count, data: mock({ - "data|50": [ + 'data|50': [ { - id: "@id", - title: "@csentence(1, 2)", - "status|1": ["published", "draft", "deleted"], - author: "@cname", - datetime: "@datetime", - pageViews: "@integer(300, 5000)", + id: '@id', + title: '@csentence(1, 2)', + 'status|1': ['published', 'draft', 'deleted'], + author: '@cname', + datetime: '@datetime', + pageViews: '@integer(300, 5000)', img: handleRandomImage(200, 200), smallImg: handleRandomImage(40, 40), - switch: "@boolean", - percent: "@integer(80,99)", + switch: '@boolean', + percent: '@integer(80,99)', }, ], }).data, - }; + } } - const { title = "", pageNo = 1, pageSize = 20 } = config.body; + const { title = '', pageNo = 1, pageSize = 20 } = config.body let mockList = List.filter((item) => { - return !(title && item.title.indexOf(title) < 0); - }); + return !(title && item.title.indexOf(title) < 0) + }) const pageList = mockList.filter( (item, index) => index < pageSize * pageNo && index >= pageSize * (pageNo - 1) - ); + ) return { code: 200, - msg: "success", + msg: 'success', totalCount: count, data: pageList, - }; + } }, }, { - url: "/table/doEdit", - type: "post", + url: '/table/doEdit', + type: 'post', response() { return { code: 200, - msg: "模拟保存成功", - }; + msg: '模拟保存成功', + } }, }, { - url: "/table/doDelete", - type: "post", + url: '/table/doDelete', + type: 'post', response() { return { code: 200, - msg: "模拟删除成功", - }; + msg: '模拟删除成功', + } }, }, -]; +] diff --git a/mock/controller/tree.js b/mock/controller/tree.js index 55c6728..fc2133a 100644 --- a/mock/controller/tree.js +++ b/mock/controller/tree.js @@ -1,38 +1,38 @@ const data = [ { - id: "1", - parentId: "0", - name: "root", - title: "root", - text: "root", - value: "1", + id: '1', + parentId: '0', + name: 'root', + title: 'root', + text: 'root', + value: '1', rank: 1, children: [ { - id: "32816b88ff72423f960e7d492a386131", - parentId: "1", - name: "一级", - title: "一级", - text: "一级", - value: "32816b88ff72423f960e7d492a386131", + id: '32816b88ff72423f960e7d492a386131', + parentId: '1', + name: '一级', + title: '一级', + text: '一级', + value: '32816b88ff72423f960e7d492a386131', rank: 2, children: [ { - id: "9e11afc35d55475fb0bd3164b9684cbe", - parentId: "32816b88ff72423f960e7d492a386131", - name: "二级", - title: "二级", - text: "二级", - value: "9e11afc35d55475fb0bd3164b9684cbe", + id: '9e11afc35d55475fb0bd3164b9684cbe', + parentId: '32816b88ff72423f960e7d492a386131', + name: '二级', + title: '二级', + text: '二级', + value: '9e11afc35d55475fb0bd3164b9684cbe', rank: 3, children: [ { - id: "4cc1b04635e4444292526c5391699077", - parentId: "9e11afc35d55475fb0bd3164b9684cbe", - name: "三级", - title: "三级", - text: "三级", - value: "4cc1b04635e4444292526c5391699077", + id: '4cc1b04635e4444292526c5391699077', + parentId: '9e11afc35d55475fb0bd3164b9684cbe', + name: '三级', + title: '三级', + text: '三级', + value: '4cc1b04635e4444292526c5391699077', rank: 4, children: [], }, @@ -42,13 +42,13 @@ const data = [ }, ], }, -]; +] module.exports = [ { - url: "/tree/list", - type: "post", + url: '/tree/list', + type: 'post', response() { - return { code: 200, msg: "success", data }; + return { code: 200, msg: 'success', data } }, }, -]; +] diff --git a/mock/controller/user.js b/mock/controller/user.js index de02fec..637c7c9 100644 --- a/mock/controller/user.js +++ b/mock/controller/user.js @@ -1,95 +1,95 @@ const accessTokens = { - admin: "admin-accessToken", - editor: "editor-accessToken", - test: "test-accessToken", -}; + admin: 'admin-accessToken', + editor: 'editor-accessToken', + test: 'test-accessToken', +} module.exports = [ { - url: "/publicKey", - type: "post", + url: '/publicKey', + type: 'post', response() { return { code: 200, - msg: "success", + msg: 'success', data: { mockServer: true, publicKey: - "MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDBT2vr+dhZElF73FJ6xiP181txKWUSNLPQQlid6DUJhGAOZblluafIdLmnUyKE8mMHhT3R+Ib3ssZcJku6Hn72yHYj/qPkCGFv0eFo7G+GJfDIUeDyalBN0QsuiE/XzPHJBuJDfRArOiWvH0BXOv5kpeXSXM8yTt5Na1jAYSiQ/wIDAQAB", + 'MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDBT2vr+dhZElF73FJ6xiP181txKWUSNLPQQlid6DUJhGAOZblluafIdLmnUyKE8mMHhT3R+Ib3ssZcJku6Hn72yHYj/qPkCGFv0eFo7G+GJfDIUeDyalBN0QsuiE/XzPHJBuJDfRArOiWvH0BXOv5kpeXSXM8yTt5Na1jAYSiQ/wIDAQAB', }, - }; + } }, }, { - url: "/login", - type: "post", + url: '/login', + type: 'post', response(config) { - const { username } = config.body; - const accessToken = accessTokens[username]; + const { username } = config.body + const accessToken = accessTokens[username] if (!accessToken) { return { code: 500, - msg: "帐户或密码不正确。", - }; + msg: '帐户或密码不正确。', + } } return { code: 200, - msg: "success", + msg: 'success', data: { accessToken }, - }; + } }, }, { - url: "/register", - type: "post", + url: '/register', + type: 'post', response() { return { code: 200, - msg: "模拟注册成功", - }; + msg: '模拟注册成功', + } }, }, { - url: "/userInfo", - type: "post", + url: '/userInfo', + type: 'post', response(config) { - const { accessToken } = config.body; - let permissions = ["admin"]; - let username = "admin"; - if ("admin-accessToken" === accessToken) { - permissions = ["admin"]; - username = "admin"; + const { accessToken } = config.body + let permissions = ['admin'] + let username = 'admin' + if ('admin-accessToken' === accessToken) { + permissions = ['admin'] + username = 'admin' } - if ("editor-accessToken" === accessToken) { - permissions = ["editor"]; - username = "editor"; + if ('editor-accessToken' === accessToken) { + permissions = ['editor'] + username = 'editor' } - if ("test-accessToken" === accessToken) { - permissions = ["admin", "editor"]; - username = "test"; + if ('test-accessToken' === accessToken) { + permissions = ['admin', 'editor'] + username = 'test' } return { code: 200, - msg: "success", + msg: 'success', data: { permissions, username, - "avatar|1": [ - "https://i.gtimg.cn/club/item/face/img/2/15922_100.gif", - "https://i.gtimg.cn/club/item/face/img/8/15918_100.gif", + 'avatar|1': [ + 'https://i.gtimg.cn/club/item/face/img/2/15922_100.gif', + 'https://i.gtimg.cn/club/item/face/img/8/15918_100.gif', ], }, - }; + } }, }, { - url: "/logout", - type: "post", + url: '/logout', + type: 'post', response() { return { code: 200, - msg: "success", - }; + msg: 'success', + } }, }, -]; +] diff --git a/mock/controller/userManagement.js b/mock/controller/userManagement.js index 30749eb..f83e701 100644 --- a/mock/controller/userManagement.js +++ b/mock/controller/userManagement.js @@ -1,70 +1,70 @@ -const totalCount = 3; +const totalCount = 3 const List = [ { - id: "@id", - username: "admin", - password: "admin", - email: "@email", - permissions: ["admin"], - datatime: "@datetime", + id: '@id', + username: 'admin', + password: 'admin', + email: '@email', + permissions: ['admin'], + datatime: '@datetime', }, { - id: "@id", - username: "editor", - password: "editor", - email: "@email", - permissions: ["editor"], - datatime: "@datetime", + id: '@id', + username: 'editor', + password: 'editor', + email: '@email', + permissions: ['editor'], + datatime: '@datetime', }, { - id: "@id", - username: "test", - password: "test", - email: "@email", - permissions: ["admin", "editor"], - datatime: "@datetime", + id: '@id', + username: 'test', + password: 'test', + email: '@email', + permissions: ['admin', 'editor'], + datatime: '@datetime', }, -]; +] module.exports = [ { - url: "/userManagement/getList", - type: "post", + url: '/userManagement/getList', + type: 'post', response(config) { - const { title = "", pageNo = 1, pageSize = 20 } = config.body; + const { title = '', pageNo = 1, pageSize = 20 } = config.body let mockList = List.filter((item) => { - if (title && item.title.indexOf(title) < 0) return false; - return true; - }); + if (title && item.title.indexOf(title) < 0) return false + return true + }) const pageList = mockList.filter( (item, index) => index < pageSize * pageNo && index >= pageSize * (pageNo - 1) - ); + ) return { code: 200, - msg: "success", + msg: 'success', totalCount, data: pageList, - }; + } }, }, { - url: "/userManagement/doEdit", - type: "post", + url: '/userManagement/doEdit', + type: 'post', response() { return { code: 200, - msg: "模拟保存成功", - }; + msg: '模拟保存成功', + } }, }, { - url: "/userManagement/doDelete", - type: "post", + url: '/userManagement/doDelete', + type: 'post', response() { return { code: 200, - msg: "模拟删除成功", - }; + msg: '模拟删除成功', + } }, }, -]; +] diff --git a/mock/index.js b/mock/index.js index ed86991..0b91890 100644 --- a/mock/index.js +++ b/mock/index.js @@ -3,14 +3,14 @@ * @description 导入所有 controller 模块,npm run serve时在node环境中自动输出controller文件夹下Mock接口,请勿修改。 */ -const { handleMockArray } = require("./utils"); +const { handleMockArray } = require('./utils') -const mocks = []; -const mockArray = handleMockArray(); +const mocks = [] +const mockArray = handleMockArray() mockArray.forEach((item) => { - const obj = require(item); - mocks.push(...obj); -}); + const obj = require(item) + mocks.push(...obj) +}) module.exports = { mocks, -}; +} diff --git a/mock/mockServer.js b/mock/mockServer.js index 27eb669..5c31a7c 100644 --- a/mock/mockServer.js +++ b/mock/mockServer.js @@ -1,10 +1,10 @@ -const chokidar = require("chokidar"); -const bodyParser = require("body-parser"); -const chalk = require("chalk"); -const path = require("path"); -const Mock = require("mockjs"); -const { baseURL } = require("../src/config/settings"); -const mockDir = path.join(process.cwd(), "mock"); +const chokidar = require('chokidar') +const bodyParser = require('body-parser') +const chalk = require('chalk') +const path = require('path') +const Mock = require('mockjs') +const { baseURL } = require('../src/config/settings') +const mockDir = path.join(process.cwd(), 'mock') /** * @@ -12,21 +12,21 @@ const mockDir = path.join(process.cwd(), "mock"); * @returns {{mockStartIndex: number, mockRoutesLength: number}} */ const registerRoutes = (app) => { - let mockLastIndex; - const { mocks } = require("./index.js"); + let mockLastIndex + const { mocks } = require('./index.js') const mocksForServer = mocks.map((route) => { - return responseFake(route.url, route.type, route.response); - }); + return responseFake(route.url, route.type, route.response) + }) for (const mock of mocksForServer) { - app[mock.type](mock.url, mock.response); - mockLastIndex = app._router.stack.length; + app[mock.type](mock.url, mock.response) + mockLastIndex = app._router.stack.length } - const mockRoutesLength = Object.keys(mocksForServer).length; + const mockRoutesLength = Object.keys(mocksForServer).length return { mockRoutesLength: mockRoutesLength, mockStartIndex: mockLastIndex - mockRoutesLength, - }; -}; + } +} /** * @@ -38,56 +38,56 @@ const registerRoutes = (app) => { const responseFake = (url, type, respond) => { return { url: new RegExp(`${baseURL}${url}`), - type: type || "get", + type: type || 'get', response(req, res) { - res.status(200); - if (JSON.stringify(req.body) !== "{}") { - console.log(chalk.green(`> 请求地址:${req.path}`)); - console.log(chalk.green(`> 请求参数:${JSON.stringify(req.body)}\n`)); + res.status(200) + if (JSON.stringify(req.body) !== '{}') { + console.log(chalk.green(`> 请求地址:${req.path}`)) + console.log(chalk.green(`> 请求参数:${JSON.stringify(req.body)}\n`)) } else { - console.log(chalk.green(`> 请求地址:${req.path}\n`)); + console.log(chalk.green(`> 请求地址:${req.path}\n`)) } res.json( Mock.mock(respond instanceof Function ? respond(req, res) : respond) - ); + ) }, - }; -}; + } +} /** * * @param app */ module.exports = (app) => { - app.use(bodyParser.json()); + app.use(bodyParser.json()) app.use( bodyParser.urlencoded({ extended: true, }) - ); + ) - const mockRoutes = registerRoutes(app); - let mockRoutesLength = mockRoutes.mockRoutesLength; - let mockStartIndex = mockRoutes.mockStartIndex; + const mockRoutes = registerRoutes(app) + let mockRoutesLength = mockRoutes.mockRoutesLength + let mockStartIndex = mockRoutes.mockStartIndex chokidar .watch(mockDir, { ignoreInitial: true, }) - .on("all", (event) => { - if (event === "change" || event === "add") { + .on('all', (event) => { + if (event === 'change' || event === 'add') { try { - app._router.stack.splice(mockStartIndex, mockRoutesLength); + app._router.stack.splice(mockStartIndex, mockRoutesLength) Object.keys(require.cache).forEach((item) => { if (item.includes(mockDir)) { - delete require.cache[require.resolve(item)]; + delete require.cache[require.resolve(item)] } - }); - const mockRoutes = registerRoutes(app); - mockRoutesLength = mockRoutes.mockRoutesLength; - mockStartIndex = mockRoutes.mockStartIndex; + }) + const mockRoutes = registerRoutes(app) + mockRoutesLength = mockRoutes.mockRoutesLength + mockStartIndex = mockRoutes.mockStartIndex } catch (error) { - console.log(chalk.red(error)); + console.log(chalk.red(error)) } } - }); -}; + }) +} diff --git a/mock/utils/index.js b/mock/utils/index.js index 4e92524..840cdac 100644 --- a/mock/utils/index.js +++ b/mock/utils/index.js @@ -1,6 +1,6 @@ -const { Random } = require("mockjs"); -const { join } = require("path"); -const fs = require("fs"); +const { Random } = require('mockjs') +const { join } = require('path') +const fs = require('fs') /** * @author chuzhixin 1204505056@qq.com (不想保留author可删除) @@ -10,7 +10,7 @@ const fs = require("fs"); * @returns {string} */ function handleRandomImage(width = 50, height = 50) { - return `https://picsum.photos/${width}/${height}?random=${Random.guid()}`; + return `https://picsum.photos/${width}/${height}?random=${Random.guid()}` } /** @@ -19,25 +19,25 @@ function handleRandomImage(width = 50, height = 50) { * @returns {[]} */ function handleMockArray() { - const mockArray = []; + const mockArray = [] const getFiles = (jsonPath) => { - const jsonFiles = []; + const jsonFiles = [] const findJsonFile = (path) => { - const files = fs.readdirSync(path); + const files = fs.readdirSync(path) files.forEach((item) => { - const fPath = join(path, item); - const stat = fs.statSync(fPath); - if (stat.isDirectory() === true) findJsonFile(item); - if (stat.isFile() === true) jsonFiles.push(item); - }); - }; - findJsonFile(jsonPath); - jsonFiles.forEach((item) => mockArray.push(`./controller/${item}`)); - }; - getFiles("mock/controller"); - return mockArray; + const fPath = join(path, item) + const stat = fs.statSync(fPath) + if (stat.isDirectory() === true) findJsonFile(item) + if (stat.isFile() === true) jsonFiles.push(item) + }) + } + findJsonFile(jsonPath) + jsonFiles.forEach((item) => mockArray.push(`./controller/${item}`)) + } + getFiles('mock/controller') + return mockArray } module.exports = { handleRandomImage, handleMockArray, -}; +} diff --git a/package.json b/package.json index 7a1344e..a145a23 100644 --- a/package.json +++ b/package.json @@ -16,7 +16,7 @@ "lint:style": "stylelint-config-prettier-check", "inspect": "vue-cli-service inspect", "template": "plop", - "clear": "rimraf node_modules&&cnpm i", + "clear": "rimraf node_modules&&npm install --registry=https://registry.npm.taobao.org&&cnpm i image-webpack-loader -D", "use:npm": "nrm use npm", "use:taobao": "nrm use taobao", "update": "ncu -u&&cnpm i", diff --git a/plopfile.js b/plopfile.js index 8fe16ee..4b2e575 100644 --- a/plopfile.js +++ b/plopfile.js @@ -1,13 +1,13 @@ -const viewGenerator = require("zx-templates/view/prompt"); -const curdGenerator = require("zx-templates/curd/prompt"); -const componentGenerator = require("zx-templates/component/prompt"); -const mockGenerator = require("zx-templates/mock/prompt"); -const vuexGenerator = require("zx-templates/vuex/prompt"); +const viewGenerator = require('zx-templates/view/prompt') +const curdGenerator = require('zx-templates/curd/prompt') +const componentGenerator = require('zx-templates/component/prompt') +const mockGenerator = require('zx-templates/mock/prompt') +const vuexGenerator = require('zx-templates/vuex/prompt') module.exports = (plop) => { - plop.setGenerator("view", viewGenerator); - plop.setGenerator("curd", curdGenerator); - plop.setGenerator("component", componentGenerator); - plop.setGenerator("mock&api", mockGenerator); - plop.setGenerator("vuex", vuexGenerator); -}; + plop.setGenerator('view', viewGenerator) + plop.setGenerator('curd', curdGenerator) + plop.setGenerator('component', componentGenerator) + plop.setGenerator('mock&api', mockGenerator) + plop.setGenerator('vuex', vuexGenerator) +} diff --git a/prettier.config.js b/prettier.config.js index a7628ac..eb510f0 100644 --- a/prettier.config.js +++ b/prettier.config.js @@ -2,15 +2,15 @@ module.exports = { printWidth: 80, tabWidth: 2, useTabs: false, - semi: true, - singleQuote: false, - quoteProps: "as-needed", + semi: false, + singleQuote: true, + quoteProps: 'as-needed', jsxSingleQuote: false, - trailingComma: "es5", + trailingComma: 'es5', bracketSpacing: true, jsxBracketSameLine: false, - arrowParens: "always", - htmlWhitespaceSensitivity: "ignore", + arrowParens: 'always', + htmlWhitespaceSensitivity: 'ignore', vueIndentScriptAndStyle: true, - endOfLine: "lf", -}; + endOfLine: 'lf', +} diff --git a/public/index.html b/public/index.html index b876b3c..a53a7f9 100644 --- a/public/index.html +++ b/public/index.html @@ -17,13 +17,13 @@
@@ -45,8 +45,8 @@