├── .gitignore ├── .hbuilderx └── launch.json ├── App.vue ├── README.md ├── index.html ├── main.js ├── manifest.json ├── package-lock.json ├── package.json ├── pages.json ├── pages ├── index │ └── index.vue └── login │ └── login.vue ├── project.config.json ├── project.private.config.json ├── static ├── 6.png ├── 9.jpg ├── QRcode.jpg └── js │ └── prompt.js ├── uni.scss └── uni_modules ├── uni-drawer ├── changelog.md ├── components │ └── uni-drawer │ │ ├── keypress.js │ │ └── uni-drawer.vue ├── package.json └── readme.md ├── uni-icons ├── changelog.md ├── components │ └── uni-icons │ │ ├── icons.js │ │ ├── uni-icons.vue │ │ ├── uniicons.css │ │ └── uniicons.ttf ├── package.json └── readme.md ├── uni-popup ├── changelog.md ├── components │ ├── uni-popup-dialog │ │ ├── keypress.js │ │ └── uni-popup-dialog.vue │ ├── uni-popup-message │ │ └── uni-popup-message.vue │ ├── uni-popup-share │ │ └── uni-popup-share.vue │ └── uni-popup │ │ ├── i18n │ │ ├── en.json │ │ ├── index.js │ │ ├── zh-Hans.json │ │ └── zh-Hant.json │ │ ├── keypress.js │ │ ├── popup.js │ │ └── uni-popup.vue ├── package.json └── readme.md ├── uni-scss ├── changelog.md ├── index.scss ├── package.json ├── readme.md ├── styles │ ├── index.scss │ ├── setting │ │ ├── _border.scss │ │ ├── _color.scss │ │ ├── _radius.scss │ │ ├── _space.scss │ │ ├── _styles.scss │ │ ├── _text.scss │ │ └── _variables.scss │ └── tools │ │ └── functions.scss ├── theme.scss └── variables.scss └── uni-transition ├── changelog.md ├── components └── uni-transition │ ├── createAnimation.js │ └── uni-transition.vue ├── package.json └── readme.md /.gitignore: -------------------------------------------------------------------------------- 1 | unpackage -------------------------------------------------------------------------------- /.hbuilderx/launch.json: -------------------------------------------------------------------------------- 1 | { // launch.json 配置了启动调试时相关设置,configurations下节点名称可为 app-plus/h5/mp-weixin/mp-baidu/mp-alipay/mp-qq/mp-toutiao/mp-360/ 2 | // launchtype项可配置值为local或remote, local代表前端连本地云函数,remote代表前端连云端云函数 3 | "version": "0.0", 4 | "configurations": [{ 5 | "default" : 6 | { 7 | "launchtype" : "local" 8 | }, 9 | "mp-weixin" : 10 | { 11 | "launchtype" : "local" 12 | }, 13 | "type" : "uniCloud" 14 | } 15 | ] 16 | } 17 | -------------------------------------------------------------------------------- /App.vue: -------------------------------------------------------------------------------- 1 | 14 | 15 | 18 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | TG群:https://t.me/+X_W1P9MLinE0MDk1 2 | 微信群加我拉技术交流群 3 | 4 | ![d6520e54fbfadd318a42dbe3a08a4d0](https://user-images.githubusercontent.com/48462615/225180177-78ad7463-f2d2-4216-b12b-9ae053f16507.jpg) 5 | 6 | # chatGPT-wx 7 | 关于由openAI公司发布的大型预训练语言模型chatGPT接入微信小程序. 8 | 9 | # chatGPT机器人体验 微信在公众号: 10 | ![扫码_搜索联合传播样式-标准色版](https://github.com/super6wenzi/chatGPT-wx/assets/48462615/491674a1-d56a-420a-a462-9cbb5192bf1b) 11 | 12 | 或者直接小程序搜索:GG智能问答机器人 13 | 14 | 15 | 16 | 17 | # 微信小程序: 18 | ![gh_8f2243aaf7bb_344](https://github.com/super6wenzi/chatGPT-wx/assets/48462615/9e732d9e-ef20-4bbf-b7b8-8fb0519e1313) 19 | 20 | 21 | # 有问题加我微信吧 备注chatGPT 22 | ![code(1)](https://user-images.githubusercontent.com/48462615/223733225-44475a84-7d97-4011-89cf-7acad9128ca6.jpg) 23 | -------------------------------------------------------------------------------- /index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /main.js: -------------------------------------------------------------------------------- 1 | import App from './App' 2 | 3 | // #ifndef VUE3 4 | import Vue from 'vue' 5 | Vue.config.productionTip = false 6 | App.mpType = 'app' 7 | const app = new Vue({ 8 | ...App 9 | }) 10 | app.$mount() 11 | // #endif 12 | 13 | // #ifdef VUE3 14 | import { createSSRApp } from 'vue' 15 | export function createApp() { 16 | const app = createSSRApp(App) 17 | return { 18 | app 19 | } 20 | } 21 | // #endif -------------------------------------------------------------------------------- /manifest.json: -------------------------------------------------------------------------------- 1 | { 2 | "name" : "chatGPT", 3 | "appid" : "__UNI__3CB5273", 4 | "description" : "", 5 | "versionName" : "1.0.0", 6 | "versionCode" : "100", 7 | "transformPx" : false, 8 | /* 5+App特有相关 */ 9 | "app-plus" : { 10 | "usingComponents" : true, 11 | "nvueStyleCompiler" : "uni-app", 12 | "compilerVersion" : 3, 13 | "splashscreen" : { 14 | "alwaysShowBeforeRender" : true, 15 | "waiting" : true, 16 | "autoclose" : true, 17 | "delay" : 0 18 | }, 19 | /* 模块配置 */ 20 | "modules" : {}, 21 | /* 应用发布信息 */ 22 | "distribute" : { 23 | /* android打包配置 */ 24 | "android" : { 25 | "permissions" : [ 26 | "", 27 | "", 28 | "", 29 | "", 30 | "", 31 | "", 32 | "", 33 | "", 34 | "", 35 | "", 36 | "", 37 | "", 38 | "", 39 | "", 40 | "" 41 | ] 42 | }, 43 | /* ios打包配置 */ 44 | "ios" : {}, 45 | /* SDK配置 */ 46 | "sdkConfigs" : {} 47 | } 48 | }, 49 | /* 快应用特有相关 */ 50 | "quickapp" : {}, 51 | /* 小程序特有相关 */ 52 | "mp-weixin" : { 53 | "appid" : "wxe95fdbf2b0886c68", 54 | "setting" : { 55 | "urlCheck" : false, 56 | "minified" : true 57 | }, 58 | "usingComponents" : true 59 | }, 60 | "mp-alipay" : { 61 | "usingComponents" : true 62 | }, 63 | "mp-baidu" : { 64 | "usingComponents" : true 65 | }, 66 | "mp-toutiao" : { 67 | "usingComponents" : true 68 | }, 69 | "uniStatistics" : { 70 | "enable" : false 71 | }, 72 | "vueVersion" : "2" 73 | } 74 | -------------------------------------------------------------------------------- /package-lock.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "charGPT-wx", 3 | "lockfileVersion": 3, 4 | "requires": true, 5 | "packages": { 6 | "": { 7 | "dependencies": { 8 | "easy-typer-js": "^2.1.0" 9 | } 10 | }, 11 | "node_modules/easy-typer-js": { 12 | "version": "2.1.0", 13 | "resolved": "https://registry.npmmirror.com/easy-typer-js/-/easy-typer-js-2.1.0.tgz", 14 | "integrity": "sha512-P1G1oPO26lPfuPdaS3KyywFc36HRVKBJvzxJiOMbn5+Z3n9JLzhTT4cJK121mnjujyOWQiRla4ikHZQHPcoa/g==" 15 | } 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "dependencies": { 3 | "easy-typer-js": "^2.1.0" 4 | } 5 | } 6 | -------------------------------------------------------------------------------- /pages.json: -------------------------------------------------------------------------------- 1 | { 2 | "lazyCodeLoading":"requiredComponents", 3 | "pages": [ //pages数组中第一项表示应用启动页,参考:https://uniapp.dcloud.io/collocation/pages 4 | { 5 | "path" : "pages/login/login", 6 | "style" : 7 | { 8 | "navigationBarTitleText": "", 9 | "enablePullDownRefresh": false, 10 | "navigationStyle": "custom" 11 | } 12 | 13 | }, 14 | { 15 | "path": "pages/index/index", 16 | "style": { 17 | "navigationBarTitleText": "智能AI聊天机器人" 18 | // "navigationStyle": "custom" 19 | } 20 | } 21 | 22 | ], 23 | "globalStyle": { 24 | "navigationBarTextStyle": "black", 25 | "navigationBarTitleText": "uni-app", 26 | "navigationBarBackgroundColor": "#F8F8F8", 27 | "backgroundColor": "#F8F8F8" 28 | }, 29 | "condition" : { //模式配置,仅开发期间生效 30 | "current": 0, //当前激活的模式(list 的索引项) 31 | "list": [ 32 | { 33 | "name": "", //模式名称 34 | "path": "", //启动页面,必选 35 | "query": "" //启动参数,在页面的onLoad函数里面得到 36 | } 37 | ] 38 | } 39 | } 40 | -------------------------------------------------------------------------------- /pages/index/index.vue: -------------------------------------------------------------------------------- 1 | 68 | 69 | 237 | 238 | 385 | -------------------------------------------------------------------------------- /pages/login/login.vue: -------------------------------------------------------------------------------- 1 | 22 | 23 | 86 | 87 | 127 | -------------------------------------------------------------------------------- /project.config.json: -------------------------------------------------------------------------------- 1 | { 2 | "appid": "wxe95fdbf2b0886c68", 3 | "compileType": "miniprogram", 4 | "libVersion": "2.30.0", 5 | "miniprogramRoot": "unpackage/dist/dev/mp-weixin/", 6 | "packOptions": { 7 | "ignore": [], 8 | "include": [] 9 | }, 10 | "setting": { 11 | "coverView": true, 12 | "es6": true, 13 | "postcss": true, 14 | "minified": true, 15 | "enhance": true, 16 | "showShadowRootInWxmlPanel": true, 17 | "packNpmRelationList": [], 18 | "babelSetting": { 19 | "ignore": [], 20 | "disablePlugins": [], 21 | "outputPath": "" 22 | }, 23 | "ignoreUploadUnusedFiles": false 24 | }, 25 | "condition": {}, 26 | "editorSetting": { 27 | "tabIndent": "insertSpaces", 28 | "tabSize": 2 29 | }, 30 | "srcMiniprogramRoot": "unpackage/dist/dev/mp-weixin/" 31 | } -------------------------------------------------------------------------------- /project.private.config.json: -------------------------------------------------------------------------------- 1 | { 2 | "description": "项目私有配置文件。此文件中的内容将覆盖 project.config.json 中的相同字段。项目的改动优先同步到此文件中。详见文档:https://developers.weixin.qq.com/miniprogram/dev/devtools/projectconfig.html", 3 | "projectname": "charGPT-wx", 4 | "setting": { 5 | "compileHotReLoad": true, 6 | "urlCheck": true 7 | } 8 | } -------------------------------------------------------------------------------- /static/6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/super6wenzi/chatGPT-wx/d26848a360abfb91ccd613a35e0e0b2f8c4e00d7/static/6.png -------------------------------------------------------------------------------- /static/9.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/super6wenzi/chatGPT-wx/d26848a360abfb91ccd613a35e0e0b2f8c4e00d7/static/9.jpg -------------------------------------------------------------------------------- /static/QRcode.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/super6wenzi/chatGPT-wx/d26848a360abfb91ccd613a35e0e0b2f8c4e00d7/static/QRcode.jpg -------------------------------------------------------------------------------- /static/js/prompt.js: -------------------------------------------------------------------------------- 1 | export const promptList=[ 2 | { 3 | title:'Linux 终端', 4 | prompt:'我想让你充当 Linux 终端。我将输入命令,您将回复终端应显示的内容。我希望您只在一个唯一的代码块内回复终端输出,而不是其他任何内容。不要写解释。除非我指示您这样做,否则不要键入命令。当我需要用英语告诉你一些事情时,我会把文字放在中括号内[就像这样]。我的第一个命令是 pwd' 5 | }, 6 | { 7 | title:'英语翻译', 8 | prompt:'我希望你能担任英语翻译、拼写校对和修辞改进的角色。我会用任何语言和你交流,你会识别语言,将其翻译并用更为优美和精炼的英语回答我。请将我简单的词汇和句子替换成更为优美和高雅的表达方式,确保意思不变,但使其更具文学性。请仅回答更正和改进的部分,不要写解释。我的第一句话是“how are you ?”,请翻译它。' 9 | }, 10 | { 11 | title:'前端智能思路助手', 12 | prompt:'我想让你充当前端开发专家。我将提供一些关于Js、Node等前端代码问题的具体信息,而你的工作就是想出为我解决问题的策略。这可能包括建议代码、代码逻辑思路策略。我的第一个请求是“我需要能够动态监听某个元素节点距离当前电脑设备屏幕的左上角的X和Y轴,通过拖拽移动位置浏览器窗口和改变大小浏览器窗口。”' 13 | }, 14 | { 15 | title:'面试官', 16 | prompt:'我想让你担任面试官。我将成为候选人,您将向我询问关于职位的面试问题。我希望你只作为面试官回答。不要一次写出所有的问题。我希望你只对我进行采访。问我问题,等待我的回答。不要写解释。像面试官一样一个一个问我,等我回答。下面我将告知你充当什么面试官' 17 | }, 18 | { 19 | title:'JavaScript 控制台', 20 | prompt:'我希望你充当 javascript 控制台。我将键入命令,您将回复 javascript 控制台应显示的内容。我希望您只在一个唯一的代码块内回复终端输出,而不是其他任何内容。不要写解释。除非我指示您这样做。我的第一个命令是 console.log("Hello World");' 21 | }, 22 | { 23 | title:'旅游指南', 24 | prompt:'我想让你做一个旅游指南。我会把我的位置写给你,你会推荐一个靠近我的位置的地方。在某些情况下,我还会告诉您我将访问的地方类型。您还会向我推荐靠近我的第一个位置的类似类型的地方。我的第一个建议请求是“我在上海,我只想参观博物馆。”' 25 | }, 26 | { 27 | title:'广告商', 28 | prompt:'我想让你充当广告商。您将创建一个活动来推广您选择的产品或服务。您将选择目标受众,制定关键信息和口号,选择宣传媒体渠道,并决定实现目标所需的任何其他活动。我的第一个建议请求是“我需要帮助针对 18-30 岁的年轻人制作一种新型能量饮料的广告活动。”' 29 | }, 30 | { 31 | title:'讲故事的人', 32 | prompt:'我想让你扮演讲故事的角色。您将想出引人入胜、富有想象力和吸引观众的有趣故事。它可以是童话故事、教育故事或任何其他类型的故事,有可能吸引人们的注意力和想象力。根据目标受众,您可以为讲故事环节选择特定的主题或主题,例如,如果是儿童,则可以谈论动物;如果是成年人,那么基于历史的故事可能会更好地吸引他们等等。我的第一个要求是“我需要一个关于毅力的有趣故事。”' 33 | }, 34 | { 35 | title:'足球解说员', 36 | prompt:'我想让你担任足球评论员。我会给你描述正在进行的足球比赛,你会评论比赛,分析到目前为止发生的事情,并预测比赛可能会如何结束。您应该了解足球术语、战术、每场比赛涉及的球员/球队,并主要专注于提供明智的评论,而不仅仅是逐场叙述。我的第一个请求是“我正在观看曼联对切尔西的比赛——为这场比赛提供评论。”' 37 | }, 38 | { 39 | title:'脱口秀喜剧演员', 40 | prompt:'我想让你扮演一个脱口秀喜剧演员。我将为您提供一些与时事相关的话题,您将运用您的智慧、创造力和观察能力,根据这些话题创建一个例程。您还应该确保将个人轶事或经历融入日常活动中,以使其对观众更具相关性和吸引力。下面我将告知你相关话题' 41 | }, 42 | { 43 | title:'作曲家', 44 | prompt:'我想让你扮演作曲家。我会提供一首歌的歌词,你会为它创作音乐。这可能包括使用各种乐器或工具,例如合成器或采样器,以创造使歌词栩栩如生的旋律和和声。我的第一个请求是“我写了一首名为“满江红”的诗,需要配乐。' 45 | }, 46 | { 47 | title:'辩论选手', 48 | prompt:'我要你扮演辩手。我会为你提供一些与时事相关的话题,你的任务是研究辩论的双方,为每一方提出有效的论据,驳斥对立的观点,并根据证据得出有说服力的结论。你的目标是帮助人们从讨论中解脱出来,增加对手头主题的知识和洞察力。下面我将告知你相关论题' 49 | }, 50 | { 51 | title:'编剧', 52 | prompt:'我要你担任编剧。您将为长篇电影或能够吸引观众的网络连续剧开发引人入胜且富有创意的剧本。从想出有趣的角色、故事的背景、角色之间的对话等开始。一旦你的角色发展完成——创造一个充满曲折的激动人心的故事情节,让观众一直悬念到最后。我的第一个要求是“我需要写一部以巴黎为背景的浪漫剧情电影' 53 | }, 54 | { 55 | title:'小说家', 56 | prompt:'我想让你扮演一个小说家。您将想出富有创意且引人入胜的故事,可以长期吸引读者。你可以选择任何类型,如奇幻、浪漫、历史小说等——但你的目标是写出具有出色情节、引人入胜的人物和意想不到的高潮的作品。我的第一个要求是“我要写一部以未来为背景的科幻小说”' 57 | }, 58 | { 59 | title:'诗人', 60 | prompt:'我要你扮演诗人。你将创作出能唤起情感并具有触动人心的力量的诗歌。写任何主题或主题,但要确保您的文字以优美而有意义的方式传达您试图表达的感觉。您还可以想出一些短小的诗句,这些诗句仍然足够强大,可以在读者的脑海中留下印记。我的第一个请求是“我需要一首关于爱情的诗”。' 61 | }, 62 | { 63 | title:'说唱歌手', 64 | prompt:'我想让你扮演说唱歌手。您将想出强大而有意义的歌词、节拍和节奏,让听众“惊叹”。你的歌词应该有一个有趣的含义和信息,人们也可以联系起来。在选择节拍时,请确保它既朗朗上口又与你的文字相关,这样当它们组合在一起时,每次都会发出爆炸声!我的第一个请求是“我需要一首关于在你自己身上寻找力量的说唱歌曲。' 65 | }, 66 | { 67 | title:'哲学家', 68 | prompt:'我要你担任哲学老师。我会提供一些与哲学研究相关的话题,你的工作就是用通俗易懂的方式解释这些概念。这可能包括提供示例、提出问题或将复杂的想法分解成更容易理解的更小的部分。我的第一个请求是“我需要帮助来理解不同的哲学理论如何应用于日常生活。”' 69 | }, 70 | { 71 | title:'数学老师', 72 | prompt:'我想让你扮演一名数学老师。我将提供一些数学方程式或概念,你的工作是用易于理解的术语来解释它们。这可能包括提供解决问题的分步说明、用视觉演示各种技术或建议在线资源以供进一步研究。我的第一个请求是“我需要帮助来理解概率是如何工作的。' 73 | }, 74 | { 75 | title:'网络安全专家', 76 | prompt:'我想让你充当网络安全专家。我将提供一些关于如何存储和共享数据的具体信息,而你的工作就是想出保护这些数据免受恶意行为者攻击的策略。这可能包括建议加密方法、创建防火墙或实施将某些活动标记为可疑的策略。我的第一个请求是“我需要帮助为我的公司制定有效的网络安全战略' 77 | }, 78 | { 79 | title:'私人教练', 80 | prompt:'我想让你担任私人教练。我将为您提供有关希望通过体育锻炼变得更健康、更强壮和更健康的个人所需的所有信息,您的职责是根据该人当前的健身水平、目标和生活习惯为他们制定最佳计划。您应该利用您的运动科学知识、营养建议和其他相关因素来制定适合他们的计划。我的第一个请求是“我需要帮助为想要减肥的人设计一个锻炼计划。' 81 | }, 82 | { 83 | title:'医生', 84 | prompt:'我想让你扮演医生的角色,想出创造性的治疗方法来治疗疾病。您应该能够推荐常规药物、草药和其他天然替代品。在提供建议时,您还需要考虑患者的年龄、生活方式和病史。我的第一个建议请求是“为患有关节炎的老年患者提出一个侧重于整体治疗方法的治疗计划' 85 | }, 86 | { 87 | title:'厨师', 88 | prompt:'我需要有人可以推荐美味的食谱,这些食谱包括营养有益但又简单又不费时的食物,因此适合像我们这样忙碌的人以及成本效益等其他因素,因此整体菜肴最终既健康又经济!我的第一个要求——“一些清淡而充实的东西,可以在午休时间快速煮熟”' 89 | }, 90 | { 91 | title:'法律顾问', 92 | prompt:'我想让你做我的法律顾问。我将描述一种法律情况,您将就如何处理它提供建议。你应该只回复你的建议,而不是其他。不要写解释。我的第一个请求是“我出了车祸,不知道该怎么办”。' 93 | }, 94 | { 95 | title:'个人造型师', 96 | prompt:'我想让你做我的私人造型师。我会告诉你我的时尚偏好和体型,你会建议我穿的衣服。你应该只回复你推荐的服装,别无其他。不要写解释。我的第一个请求是“我有一个正式的活动要举行,我需要帮助选择一套衣服。”' 97 | }, 98 | { 99 | title:'正则表达式生成器', 100 | prompt:'我希望你充当正则表达式生成器。您的角色是生成匹配文本中特定模式的正则表达式。您应该以一种可以轻松复制并粘贴到支持正则表达式的文本编辑器或编程语言中的格式提供正则表达式。不要写正则表达式如何工作的解释或例子;只需提供正则表达式本身。我的第一个提示是生成一个匹配电子邮件地址的正则表达式。' 101 | }, 102 | { 103 | title:'时间旅行指南', 104 | prompt:'我要你做我的时间旅行向导。我会为您提供我想参观的历史时期或未来时间,您会建议最好的事件、景点或体验的人。不要写解释,只需提供建议和任何必要的信息。我的第一个请求是“我想参观文艺复兴时期,你能推荐一些有趣的事件、景点或人物让我体验吗?' 105 | }, 106 | { 107 | title:'塔罗占卜师', 108 | prompt:'我请求你担任塔罗占卜师的角色。 您将接受我的问题并使用虚拟塔罗牌进行塔罗牌阅读。 不要忘记洗牌并介绍您在本套牌中使用的套牌。 问我给3个号要不要自己抽牌? 如果没有,请帮我抽随机卡。 拿到卡片后,请您仔细说明它们的意义,解释哪张卡片属于未来或现在或过去,结合我的问题来解释它们,并给我有用的建议或我现在应该做的事情 . 我的问题是“我的财务状况如何?' 109 | }, 110 | { 111 | title:'MBTI测试助理', 112 | prompt:'你现在是一个MBTI测试助理,现在我要开始MBTI测试。你要通过5个问题来测试我的mbti人格类型,每个问题要有abcd四个选项。5个问题内容必须是不同的方面。而且每个问题的选项都和其他问题的选项不同。等我直接回复这六个问题我的答案之后,你帮我给出人格类型分析结果' 113 | } 114 | ] -------------------------------------------------------------------------------- /uni.scss: -------------------------------------------------------------------------------- 1 | /** 2 | * 这里是uni-app内置的常用样式变量 3 | * 4 | * uni-app 官方扩展插件及插件市场(https://ext.dcloud.net.cn)上很多三方插件均使用了这些样式变量 5 | * 如果你是插件开发者,建议你使用scss预处理,并在插件代码中直接使用这些变量(无需 import 这个文件),方便用户通过搭积木的方式开发整体风格一致的App 6 | * 7 | */ 8 | 9 | /** 10 | * 如果你是App开发者(插件使用者),你可以通过修改这些变量来定制自己的插件主题,实现自定义主题功能 11 | * 12 | * 如果你的项目同样使用了scss预处理,你也可以直接在你的 scss 代码中使用如下变量,同时无需 import 这个文件 13 | */ 14 | 15 | /* 颜色变量 */ 16 | 17 | /* 行为相关颜色 */ 18 | $uni-color-primary: #007aff; 19 | $uni-color-success: #4cd964; 20 | $uni-color-warning: #f0ad4e; 21 | $uni-color-error: #dd524d; 22 | 23 | /* 文字基本颜色 */ 24 | $uni-text-color:#333;//基本色 25 | $uni-text-color-inverse:#fff;//反色 26 | $uni-text-color-grey:#999;//辅助灰色,如加载更多的提示信息 27 | $uni-text-color-placeholder: #808080; 28 | $uni-text-color-disable:#c0c0c0; 29 | 30 | /* 背景颜色 */ 31 | $uni-bg-color:#ffffff; 32 | $uni-bg-color-grey:#f8f8f8; 33 | $uni-bg-color-hover:#f1f1f1;//点击状态颜色 34 | $uni-bg-color-mask:rgba(0, 0, 0, 0.4);//遮罩颜色 35 | 36 | /* 边框颜色 */ 37 | $uni-border-color:#c8c7cc; 38 | 39 | /* 尺寸变量 */ 40 | 41 | /* 文字尺寸 */ 42 | $uni-font-size-sm:12px; 43 | $uni-font-size-base:14px; 44 | $uni-font-size-lg:16; 45 | 46 | /* 图片尺寸 */ 47 | $uni-img-size-sm:20px; 48 | $uni-img-size-base:26px; 49 | $uni-img-size-lg:40px; 50 | 51 | /* Border Radius */ 52 | $uni-border-radius-sm: 2px; 53 | $uni-border-radius-base: 3px; 54 | $uni-border-radius-lg: 6px; 55 | $uni-border-radius-circle: 50%; 56 | 57 | /* 水平间距 */ 58 | $uni-spacing-row-sm: 5px; 59 | $uni-spacing-row-base: 10px; 60 | $uni-spacing-row-lg: 15px; 61 | 62 | /* 垂直间距 */ 63 | $uni-spacing-col-sm: 4px; 64 | $uni-spacing-col-base: 8px; 65 | $uni-spacing-col-lg: 12px; 66 | 67 | /* 透明度 */ 68 | $uni-opacity-disabled: 0.3; // 组件禁用态的透明度 69 | 70 | /* 文章场景相关 */ 71 | $uni-color-title: #2C405A; // 文章标题颜色 72 | $uni-font-size-title:20px; 73 | $uni-color-subtitle: #555555; // 二级标题颜色 74 | $uni-font-size-subtitle:26px; 75 | $uni-color-paragraph: #3F536E; // 文章段落颜色 76 | $uni-font-size-paragraph:15px; 77 | -------------------------------------------------------------------------------- /uni_modules/uni-drawer/changelog.md: -------------------------------------------------------------------------------- 1 | ## 1.2.1(2021-11-22) 2 | - 修复 vue3中个别scss变量无法找到的问题 3 | ## 1.2.0(2021-11-19) 4 | - 优化 组件UI,并提供设计资源,详见:[https://uniapp.dcloud.io/component/uniui/resource](https://uniapp.dcloud.io/component/uniui/resource) 5 | - 文档迁移,详见:[https://uniapp.dcloud.io/component/uniui/uni-drawer](https://uniapp.dcloud.io/component/uniui/uni-drawer) 6 | ## 1.1.1(2021-07-30) 7 | - 优化 vue3下事件警告的问题 8 | ## 1.1.0(2021-07-13) 9 | - 组件兼容 vue3,如何创建vue3项目,详见 [uni-app 项目支持 vue3 介绍](https://ask.dcloud.net.cn/article/37834) 10 | ## 1.0.7(2021-05-12) 11 | - 新增 组件示例地址 12 | ## 1.0.6(2021-02-04) 13 | - 调整为uni_modules目录规范 14 | -------------------------------------------------------------------------------- /uni_modules/uni-drawer/components/uni-drawer/keypress.js: -------------------------------------------------------------------------------- 1 | // #ifdef H5 2 | export default { 3 | name: 'Keypress', 4 | props: { 5 | disable: { 6 | type: Boolean, 7 | default: false 8 | } 9 | }, 10 | mounted () { 11 | const keyNames = { 12 | esc: ['Esc', 'Escape'], 13 | tab: 'Tab', 14 | enter: 'Enter', 15 | space: [' ', 'Spacebar'], 16 | up: ['Up', 'ArrowUp'], 17 | left: ['Left', 'ArrowLeft'], 18 | right: ['Right', 'ArrowRight'], 19 | down: ['Down', 'ArrowDown'], 20 | delete: ['Backspace', 'Delete', 'Del'] 21 | } 22 | const listener = ($event) => { 23 | if (this.disable) { 24 | return 25 | } 26 | const keyName = Object.keys(keyNames).find(key => { 27 | const keyName = $event.key 28 | const value = keyNames[key] 29 | return value === keyName || (Array.isArray(value) && value.includes(keyName)) 30 | }) 31 | if (keyName) { 32 | // 避免和其他按键事件冲突 33 | setTimeout(() => { 34 | this.$emit(keyName, {}) 35 | }, 0) 36 | } 37 | } 38 | document.addEventListener('keyup', listener) 39 | // this.$once('hook:beforeDestroy', () => { 40 | // document.removeEventListener('keyup', listener) 41 | // }) 42 | }, 43 | render: () => {} 44 | } 45 | // #endif 46 | -------------------------------------------------------------------------------- /uni_modules/uni-drawer/components/uni-drawer/uni-drawer.vue: -------------------------------------------------------------------------------- 1 | 12 | 13 | 107 | 108 | 184 | -------------------------------------------------------------------------------- /uni_modules/uni-drawer/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "id": "uni-drawer", 3 | "displayName": "uni-drawer 抽屉", 4 | "version": "1.2.1", 5 | "description": "抽屉式导航,用于展示侧滑菜单,侧滑导航。", 6 | "keywords": [ 7 | "uni-ui", 8 | "uniui", 9 | "drawer", 10 | "抽屉", 11 | "侧滑导航" 12 | ], 13 | "repository": "https://github.com/dcloudio/uni-ui", 14 | "engines": { 15 | "HBuilderX": "" 16 | }, 17 | "directories": { 18 | "example": "../../temps/example_temps" 19 | }, 20 | "dcloudext": { 21 | "category": [ 22 | "前端组件", 23 | "通用组件" 24 | ], 25 | "sale": { 26 | "regular": { 27 | "price": "0.00" 28 | }, 29 | "sourcecode": { 30 | "price": "0.00" 31 | } 32 | }, 33 | "contact": { 34 | "qq": "" 35 | }, 36 | "declaration": { 37 | "ads": "无", 38 | "data": "无", 39 | "permissions": "无" 40 | }, 41 | "npmurl": "https://www.npmjs.com/package/@dcloudio/uni-ui" 42 | }, 43 | "uni_modules": { 44 | "dependencies": ["uni-scss"], 45 | "encrypt": [], 46 | "platforms": { 47 | "cloud": { 48 | "tcb": "y", 49 | "aliyun": "y" 50 | }, 51 | "client": { 52 | "App": { 53 | "app-vue": "y", 54 | "app-nvue": "y" 55 | }, 56 | "H5-mobile": { 57 | "Safari": "y", 58 | "Android Browser": "y", 59 | "微信浏览器(Android)": "y", 60 | "QQ浏览器(Android)": "y" 61 | }, 62 | "H5-pc": { 63 | "Chrome": "y", 64 | "IE": "y", 65 | "Edge": "y", 66 | "Firefox": "y", 67 | "Safari": "y" 68 | }, 69 | "小程序": { 70 | "微信": "y", 71 | "阿里": "y", 72 | "百度": "y", 73 | "字节跳动": "y", 74 | "QQ": "y" 75 | }, 76 | "快应用": { 77 | "华为": "u", 78 | "联盟": "u" 79 | }, 80 | "Vue": { 81 | "vue2": "y", 82 | "vue3": "y" 83 | } 84 | } 85 | } 86 | } 87 | } -------------------------------------------------------------------------------- /uni_modules/uni-drawer/readme.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | ## Drawer 抽屉 4 | > **组件名:uni-drawer** 5 | > 代码块: `uDrawer` 6 | 7 | 抽屉侧滑菜单。 8 | 9 | ### [查看文档](https://uniapp.dcloud.io/component/uniui/uni-drawer) 10 | #### 如使用过程中有任何问题,或者您对uni-ui有一些好的建议,欢迎加入 uni-ui 交流群:871950839 -------------------------------------------------------------------------------- /uni_modules/uni-icons/changelog.md: -------------------------------------------------------------------------------- 1 | ## 1.3.5(2022-01-24) 2 | - 优化 size 属性可以传入不带单位的字符串数值 3 | ## 1.3.4(2022-01-24) 4 | - 优化 size 支持其他单位 5 | ## 1.3.3(2022-01-17) 6 | - 修复 nvue 有些图标不显示的bug,兼容老版本图标 7 | ## 1.3.2(2021-12-01) 8 | - 优化 示例可复制图标名称 9 | ## 1.3.1(2021-11-23) 10 | - 优化 兼容旧组件 type 值 11 | ## 1.3.0(2021-11-19) 12 | - 新增 更多图标 13 | - 优化 自定义图标使用方式 14 | - 优化 组件UI,并提供设计资源,详见:[https://uniapp.dcloud.io/component/uniui/resource](https://uniapp.dcloud.io/component/uniui/resource) 15 | - 文档迁移,详见:[https://uniapp.dcloud.io/component/uniui/uni-icons](https://uniapp.dcloud.io/component/uniui/uni-icons) 16 | ## 1.1.7(2021-11-08) 17 | ## 1.2.0(2021-07-30) 18 | - 组件兼容 vue3,如何创建vue3项目,详见 [uni-app 项目支持 vue3 介绍](https://ask.dcloud.net.cn/article/37834) 19 | ## 1.1.5(2021-05-12) 20 | - 新增 组件示例地址 21 | ## 1.1.4(2021-02-05) 22 | - 调整为uni_modules目录规范 23 | -------------------------------------------------------------------------------- /uni_modules/uni-icons/components/uni-icons/icons.js: -------------------------------------------------------------------------------- 1 | export default { 2 | "id": "2852637", 3 | "name": "uniui图标库", 4 | "font_family": "uniicons", 5 | "css_prefix_text": "uniui-", 6 | "description": "", 7 | "glyphs": [ 8 | { 9 | "icon_id": "25027049", 10 | "name": "yanse", 11 | "font_class": "color", 12 | "unicode": "e6cf", 13 | "unicode_decimal": 59087 14 | }, 15 | { 16 | "icon_id": "25027048", 17 | "name": "wallet", 18 | "font_class": "wallet", 19 | "unicode": "e6b1", 20 | "unicode_decimal": 59057 21 | }, 22 | { 23 | "icon_id": "25015720", 24 | "name": "settings-filled", 25 | "font_class": "settings-filled", 26 | "unicode": "e6ce", 27 | "unicode_decimal": 59086 28 | }, 29 | { 30 | "icon_id": "25015434", 31 | "name": "shimingrenzheng-filled", 32 | "font_class": "auth-filled", 33 | "unicode": "e6cc", 34 | "unicode_decimal": 59084 35 | }, 36 | { 37 | "icon_id": "24934246", 38 | "name": "shop-filled", 39 | "font_class": "shop-filled", 40 | "unicode": "e6cd", 41 | "unicode_decimal": 59085 42 | }, 43 | { 44 | "icon_id": "24934159", 45 | "name": "staff-filled-01", 46 | "font_class": "staff-filled", 47 | "unicode": "e6cb", 48 | "unicode_decimal": 59083 49 | }, 50 | { 51 | "icon_id": "24932461", 52 | "name": "VIP-filled", 53 | "font_class": "vip-filled", 54 | "unicode": "e6c6", 55 | "unicode_decimal": 59078 56 | }, 57 | { 58 | "icon_id": "24932462", 59 | "name": "plus_circle_fill", 60 | "font_class": "plus-filled", 61 | "unicode": "e6c7", 62 | "unicode_decimal": 59079 63 | }, 64 | { 65 | "icon_id": "24932463", 66 | "name": "folder_add-filled", 67 | "font_class": "folder-add-filled", 68 | "unicode": "e6c8", 69 | "unicode_decimal": 59080 70 | }, 71 | { 72 | "icon_id": "24932464", 73 | "name": "yanse-filled", 74 | "font_class": "color-filled", 75 | "unicode": "e6c9", 76 | "unicode_decimal": 59081 77 | }, 78 | { 79 | "icon_id": "24932465", 80 | "name": "tune-filled", 81 | "font_class": "tune-filled", 82 | "unicode": "e6ca", 83 | "unicode_decimal": 59082 84 | }, 85 | { 86 | "icon_id": "24932455", 87 | "name": "a-rilidaka-filled", 88 | "font_class": "calendar-filled", 89 | "unicode": "e6c0", 90 | "unicode_decimal": 59072 91 | }, 92 | { 93 | "icon_id": "24932456", 94 | "name": "notification-filled", 95 | "font_class": "notification-filled", 96 | "unicode": "e6c1", 97 | "unicode_decimal": 59073 98 | }, 99 | { 100 | "icon_id": "24932457", 101 | "name": "wallet-filled", 102 | "font_class": "wallet-filled", 103 | "unicode": "e6c2", 104 | "unicode_decimal": 59074 105 | }, 106 | { 107 | "icon_id": "24932458", 108 | "name": "paihangbang-filled", 109 | "font_class": "medal-filled", 110 | "unicode": "e6c3", 111 | "unicode_decimal": 59075 112 | }, 113 | { 114 | "icon_id": "24932459", 115 | "name": "gift-filled", 116 | "font_class": "gift-filled", 117 | "unicode": "e6c4", 118 | "unicode_decimal": 59076 119 | }, 120 | { 121 | "icon_id": "24932460", 122 | "name": "fire-filled", 123 | "font_class": "fire-filled", 124 | "unicode": "e6c5", 125 | "unicode_decimal": 59077 126 | }, 127 | { 128 | "icon_id": "24928001", 129 | "name": "refreshempty", 130 | "font_class": "refreshempty", 131 | "unicode": "e6bf", 132 | "unicode_decimal": 59071 133 | }, 134 | { 135 | "icon_id": "24926853", 136 | "name": "location-ellipse", 137 | "font_class": "location-filled", 138 | "unicode": "e6af", 139 | "unicode_decimal": 59055 140 | }, 141 | { 142 | "icon_id": "24926735", 143 | "name": "person-filled", 144 | "font_class": "person-filled", 145 | "unicode": "e69d", 146 | "unicode_decimal": 59037 147 | }, 148 | { 149 | "icon_id": "24926703", 150 | "name": "personadd-filled", 151 | "font_class": "personadd-filled", 152 | "unicode": "e698", 153 | "unicode_decimal": 59032 154 | }, 155 | { 156 | "icon_id": "24923351", 157 | "name": "back", 158 | "font_class": "back", 159 | "unicode": "e6b9", 160 | "unicode_decimal": 59065 161 | }, 162 | { 163 | "icon_id": "24923352", 164 | "name": "forward", 165 | "font_class": "forward", 166 | "unicode": "e6ba", 167 | "unicode_decimal": 59066 168 | }, 169 | { 170 | "icon_id": "24923353", 171 | "name": "arrowthinright", 172 | "font_class": "arrow-right", 173 | "unicode": "e6bb", 174 | "unicode_decimal": 59067 175 | }, 176 | { 177 | "icon_id": "24923353", 178 | "name": "arrowthinright", 179 | "font_class": "arrowthinright", 180 | "unicode": "e6bb", 181 | "unicode_decimal": 59067 182 | }, 183 | { 184 | "icon_id": "24923354", 185 | "name": "arrowthinleft", 186 | "font_class": "arrow-left", 187 | "unicode": "e6bc", 188 | "unicode_decimal": 59068 189 | }, 190 | { 191 | "icon_id": "24923354", 192 | "name": "arrowthinleft", 193 | "font_class": "arrowthinleft", 194 | "unicode": "e6bc", 195 | "unicode_decimal": 59068 196 | }, 197 | { 198 | "icon_id": "24923355", 199 | "name": "arrowthinup", 200 | "font_class": "arrow-up", 201 | "unicode": "e6bd", 202 | "unicode_decimal": 59069 203 | }, 204 | { 205 | "icon_id": "24923355", 206 | "name": "arrowthinup", 207 | "font_class": "arrowthinup", 208 | "unicode": "e6bd", 209 | "unicode_decimal": 59069 210 | }, 211 | { 212 | "icon_id": "24923356", 213 | "name": "arrowthindown", 214 | "font_class": "arrow-down", 215 | "unicode": "e6be", 216 | "unicode_decimal": 59070 217 | },{ 218 | "icon_id": "24923356", 219 | "name": "arrowthindown", 220 | "font_class": "arrowthindown", 221 | "unicode": "e6be", 222 | "unicode_decimal": 59070 223 | }, 224 | { 225 | "icon_id": "24923349", 226 | "name": "arrowdown", 227 | "font_class": "bottom", 228 | "unicode": "e6b8", 229 | "unicode_decimal": 59064 230 | },{ 231 | "icon_id": "24923349", 232 | "name": "arrowdown", 233 | "font_class": "arrowdown", 234 | "unicode": "e6b8", 235 | "unicode_decimal": 59064 236 | }, 237 | { 238 | "icon_id": "24923346", 239 | "name": "arrowright", 240 | "font_class": "right", 241 | "unicode": "e6b5", 242 | "unicode_decimal": 59061 243 | }, 244 | { 245 | "icon_id": "24923346", 246 | "name": "arrowright", 247 | "font_class": "arrowright", 248 | "unicode": "e6b5", 249 | "unicode_decimal": 59061 250 | }, 251 | { 252 | "icon_id": "24923347", 253 | "name": "arrowup", 254 | "font_class": "top", 255 | "unicode": "e6b6", 256 | "unicode_decimal": 59062 257 | }, 258 | { 259 | "icon_id": "24923347", 260 | "name": "arrowup", 261 | "font_class": "arrowup", 262 | "unicode": "e6b6", 263 | "unicode_decimal": 59062 264 | }, 265 | { 266 | "icon_id": "24923348", 267 | "name": "arrowleft", 268 | "font_class": "left", 269 | "unicode": "e6b7", 270 | "unicode_decimal": 59063 271 | }, 272 | { 273 | "icon_id": "24923348", 274 | "name": "arrowleft", 275 | "font_class": "arrowleft", 276 | "unicode": "e6b7", 277 | "unicode_decimal": 59063 278 | }, 279 | { 280 | "icon_id": "24923334", 281 | "name": "eye", 282 | "font_class": "eye", 283 | "unicode": "e651", 284 | "unicode_decimal": 58961 285 | }, 286 | { 287 | "icon_id": "24923335", 288 | "name": "eye-filled", 289 | "font_class": "eye-filled", 290 | "unicode": "e66a", 291 | "unicode_decimal": 58986 292 | }, 293 | { 294 | "icon_id": "24923336", 295 | "name": "eye-slash", 296 | "font_class": "eye-slash", 297 | "unicode": "e6b3", 298 | "unicode_decimal": 59059 299 | }, 300 | { 301 | "icon_id": "24923337", 302 | "name": "eye-slash-filled", 303 | "font_class": "eye-slash-filled", 304 | "unicode": "e6b4", 305 | "unicode_decimal": 59060 306 | }, 307 | { 308 | "icon_id": "24923305", 309 | "name": "info-filled", 310 | "font_class": "info-filled", 311 | "unicode": "e649", 312 | "unicode_decimal": 58953 313 | }, 314 | { 315 | "icon_id": "24923299", 316 | "name": "reload-01", 317 | "font_class": "reload", 318 | "unicode": "e6b2", 319 | "unicode_decimal": 59058 320 | }, 321 | { 322 | "icon_id": "24923195", 323 | "name": "mic_slash_fill", 324 | "font_class": "micoff-filled", 325 | "unicode": "e6b0", 326 | "unicode_decimal": 59056 327 | }, 328 | { 329 | "icon_id": "24923165", 330 | "name": "map-pin-ellipse", 331 | "font_class": "map-pin-ellipse", 332 | "unicode": "e6ac", 333 | "unicode_decimal": 59052 334 | }, 335 | { 336 | "icon_id": "24923166", 337 | "name": "map-pin", 338 | "font_class": "map-pin", 339 | "unicode": "e6ad", 340 | "unicode_decimal": 59053 341 | }, 342 | { 343 | "icon_id": "24923167", 344 | "name": "location", 345 | "font_class": "location", 346 | "unicode": "e6ae", 347 | "unicode_decimal": 59054 348 | }, 349 | { 350 | "icon_id": "24923064", 351 | "name": "starhalf", 352 | "font_class": "starhalf", 353 | "unicode": "e683", 354 | "unicode_decimal": 59011 355 | }, 356 | { 357 | "icon_id": "24923065", 358 | "name": "star", 359 | "font_class": "star", 360 | "unicode": "e688", 361 | "unicode_decimal": 59016 362 | }, 363 | { 364 | "icon_id": "24923066", 365 | "name": "star-filled", 366 | "font_class": "star-filled", 367 | "unicode": "e68f", 368 | "unicode_decimal": 59023 369 | }, 370 | { 371 | "icon_id": "24899646", 372 | "name": "a-rilidaka", 373 | "font_class": "calendar", 374 | "unicode": "e6a0", 375 | "unicode_decimal": 59040 376 | }, 377 | { 378 | "icon_id": "24899647", 379 | "name": "fire", 380 | "font_class": "fire", 381 | "unicode": "e6a1", 382 | "unicode_decimal": 59041 383 | }, 384 | { 385 | "icon_id": "24899648", 386 | "name": "paihangbang", 387 | "font_class": "medal", 388 | "unicode": "e6a2", 389 | "unicode_decimal": 59042 390 | }, 391 | { 392 | "icon_id": "24899649", 393 | "name": "font", 394 | "font_class": "font", 395 | "unicode": "e6a3", 396 | "unicode_decimal": 59043 397 | }, 398 | { 399 | "icon_id": "24899650", 400 | "name": "gift", 401 | "font_class": "gift", 402 | "unicode": "e6a4", 403 | "unicode_decimal": 59044 404 | }, 405 | { 406 | "icon_id": "24899651", 407 | "name": "link", 408 | "font_class": "link", 409 | "unicode": "e6a5", 410 | "unicode_decimal": 59045 411 | }, 412 | { 413 | "icon_id": "24899652", 414 | "name": "notification", 415 | "font_class": "notification", 416 | "unicode": "e6a6", 417 | "unicode_decimal": 59046 418 | }, 419 | { 420 | "icon_id": "24899653", 421 | "name": "staff", 422 | "font_class": "staff", 423 | "unicode": "e6a7", 424 | "unicode_decimal": 59047 425 | }, 426 | { 427 | "icon_id": "24899654", 428 | "name": "VIP", 429 | "font_class": "vip", 430 | "unicode": "e6a8", 431 | "unicode_decimal": 59048 432 | }, 433 | { 434 | "icon_id": "24899655", 435 | "name": "folder_add", 436 | "font_class": "folder-add", 437 | "unicode": "e6a9", 438 | "unicode_decimal": 59049 439 | }, 440 | { 441 | "icon_id": "24899656", 442 | "name": "tune", 443 | "font_class": "tune", 444 | "unicode": "e6aa", 445 | "unicode_decimal": 59050 446 | }, 447 | { 448 | "icon_id": "24899657", 449 | "name": "shimingrenzheng", 450 | "font_class": "auth", 451 | "unicode": "e6ab", 452 | "unicode_decimal": 59051 453 | }, 454 | { 455 | "icon_id": "24899565", 456 | "name": "person", 457 | "font_class": "person", 458 | "unicode": "e699", 459 | "unicode_decimal": 59033 460 | }, 461 | { 462 | "icon_id": "24899566", 463 | "name": "email-filled", 464 | "font_class": "email-filled", 465 | "unicode": "e69a", 466 | "unicode_decimal": 59034 467 | }, 468 | { 469 | "icon_id": "24899567", 470 | "name": "phone-filled", 471 | "font_class": "phone-filled", 472 | "unicode": "e69b", 473 | "unicode_decimal": 59035 474 | }, 475 | { 476 | "icon_id": "24899568", 477 | "name": "phone", 478 | "font_class": "phone", 479 | "unicode": "e69c", 480 | "unicode_decimal": 59036 481 | }, 482 | { 483 | "icon_id": "24899570", 484 | "name": "email", 485 | "font_class": "email", 486 | "unicode": "e69e", 487 | "unicode_decimal": 59038 488 | }, 489 | { 490 | "icon_id": "24899571", 491 | "name": "personadd", 492 | "font_class": "personadd", 493 | "unicode": "e69f", 494 | "unicode_decimal": 59039 495 | }, 496 | { 497 | "icon_id": "24899558", 498 | "name": "chatboxes-filled", 499 | "font_class": "chatboxes-filled", 500 | "unicode": "e692", 501 | "unicode_decimal": 59026 502 | }, 503 | { 504 | "icon_id": "24899559", 505 | "name": "contact", 506 | "font_class": "contact", 507 | "unicode": "e693", 508 | "unicode_decimal": 59027 509 | }, 510 | { 511 | "icon_id": "24899560", 512 | "name": "chatbubble-filled", 513 | "font_class": "chatbubble-filled", 514 | "unicode": "e694", 515 | "unicode_decimal": 59028 516 | }, 517 | { 518 | "icon_id": "24899561", 519 | "name": "contact-filled", 520 | "font_class": "contact-filled", 521 | "unicode": "e695", 522 | "unicode_decimal": 59029 523 | }, 524 | { 525 | "icon_id": "24899562", 526 | "name": "chatboxes", 527 | "font_class": "chatboxes", 528 | "unicode": "e696", 529 | "unicode_decimal": 59030 530 | }, 531 | { 532 | "icon_id": "24899563", 533 | "name": "chatbubble", 534 | "font_class": "chatbubble", 535 | "unicode": "e697", 536 | "unicode_decimal": 59031 537 | }, 538 | { 539 | "icon_id": "24881290", 540 | "name": "upload-filled", 541 | "font_class": "upload-filled", 542 | "unicode": "e68e", 543 | "unicode_decimal": 59022 544 | }, 545 | { 546 | "icon_id": "24881292", 547 | "name": "upload", 548 | "font_class": "upload", 549 | "unicode": "e690", 550 | "unicode_decimal": 59024 551 | }, 552 | { 553 | "icon_id": "24881293", 554 | "name": "weixin", 555 | "font_class": "weixin", 556 | "unicode": "e691", 557 | "unicode_decimal": 59025 558 | }, 559 | { 560 | "icon_id": "24881274", 561 | "name": "compose", 562 | "font_class": "compose", 563 | "unicode": "e67f", 564 | "unicode_decimal": 59007 565 | }, 566 | { 567 | "icon_id": "24881275", 568 | "name": "qq", 569 | "font_class": "qq", 570 | "unicode": "e680", 571 | "unicode_decimal": 59008 572 | }, 573 | { 574 | "icon_id": "24881276", 575 | "name": "download-filled", 576 | "font_class": "download-filled", 577 | "unicode": "e681", 578 | "unicode_decimal": 59009 579 | }, 580 | { 581 | "icon_id": "24881277", 582 | "name": "pengyouquan", 583 | "font_class": "pyq", 584 | "unicode": "e682", 585 | "unicode_decimal": 59010 586 | }, 587 | { 588 | "icon_id": "24881279", 589 | "name": "sound", 590 | "font_class": "sound", 591 | "unicode": "e684", 592 | "unicode_decimal": 59012 593 | }, 594 | { 595 | "icon_id": "24881280", 596 | "name": "trash-filled", 597 | "font_class": "trash-filled", 598 | "unicode": "e685", 599 | "unicode_decimal": 59013 600 | }, 601 | { 602 | "icon_id": "24881281", 603 | "name": "sound-filled", 604 | "font_class": "sound-filled", 605 | "unicode": "e686", 606 | "unicode_decimal": 59014 607 | }, 608 | { 609 | "icon_id": "24881282", 610 | "name": "trash", 611 | "font_class": "trash", 612 | "unicode": "e687", 613 | "unicode_decimal": 59015 614 | }, 615 | { 616 | "icon_id": "24881284", 617 | "name": "videocam-filled", 618 | "font_class": "videocam-filled", 619 | "unicode": "e689", 620 | "unicode_decimal": 59017 621 | }, 622 | { 623 | "icon_id": "24881285", 624 | "name": "spinner-cycle", 625 | "font_class": "spinner-cycle", 626 | "unicode": "e68a", 627 | "unicode_decimal": 59018 628 | }, 629 | { 630 | "icon_id": "24881286", 631 | "name": "weibo", 632 | "font_class": "weibo", 633 | "unicode": "e68b", 634 | "unicode_decimal": 59019 635 | }, 636 | { 637 | "icon_id": "24881288", 638 | "name": "videocam", 639 | "font_class": "videocam", 640 | "unicode": "e68c", 641 | "unicode_decimal": 59020 642 | }, 643 | { 644 | "icon_id": "24881289", 645 | "name": "download", 646 | "font_class": "download", 647 | "unicode": "e68d", 648 | "unicode_decimal": 59021 649 | }, 650 | { 651 | "icon_id": "24879601", 652 | "name": "help", 653 | "font_class": "help", 654 | "unicode": "e679", 655 | "unicode_decimal": 59001 656 | }, 657 | { 658 | "icon_id": "24879602", 659 | "name": "navigate-filled", 660 | "font_class": "navigate-filled", 661 | "unicode": "e67a", 662 | "unicode_decimal": 59002 663 | }, 664 | { 665 | "icon_id": "24879603", 666 | "name": "plusempty", 667 | "font_class": "plusempty", 668 | "unicode": "e67b", 669 | "unicode_decimal": 59003 670 | }, 671 | { 672 | "icon_id": "24879604", 673 | "name": "smallcircle", 674 | "font_class": "smallcircle", 675 | "unicode": "e67c", 676 | "unicode_decimal": 59004 677 | }, 678 | { 679 | "icon_id": "24879605", 680 | "name": "minus-filled", 681 | "font_class": "minus-filled", 682 | "unicode": "e67d", 683 | "unicode_decimal": 59005 684 | }, 685 | { 686 | "icon_id": "24879606", 687 | "name": "micoff", 688 | "font_class": "micoff", 689 | "unicode": "e67e", 690 | "unicode_decimal": 59006 691 | }, 692 | { 693 | "icon_id": "24879588", 694 | "name": "closeempty", 695 | "font_class": "closeempty", 696 | "unicode": "e66c", 697 | "unicode_decimal": 58988 698 | }, 699 | { 700 | "icon_id": "24879589", 701 | "name": "clear", 702 | "font_class": "clear", 703 | "unicode": "e66d", 704 | "unicode_decimal": 58989 705 | }, 706 | { 707 | "icon_id": "24879590", 708 | "name": "navigate", 709 | "font_class": "navigate", 710 | "unicode": "e66e", 711 | "unicode_decimal": 58990 712 | }, 713 | { 714 | "icon_id": "24879591", 715 | "name": "minus", 716 | "font_class": "minus", 717 | "unicode": "e66f", 718 | "unicode_decimal": 58991 719 | }, 720 | { 721 | "icon_id": "24879592", 722 | "name": "image", 723 | "font_class": "image", 724 | "unicode": "e670", 725 | "unicode_decimal": 58992 726 | }, 727 | { 728 | "icon_id": "24879593", 729 | "name": "mic", 730 | "font_class": "mic", 731 | "unicode": "e671", 732 | "unicode_decimal": 58993 733 | }, 734 | { 735 | "icon_id": "24879594", 736 | "name": "paperplane", 737 | "font_class": "paperplane", 738 | "unicode": "e672", 739 | "unicode_decimal": 58994 740 | }, 741 | { 742 | "icon_id": "24879595", 743 | "name": "close", 744 | "font_class": "close", 745 | "unicode": "e673", 746 | "unicode_decimal": 58995 747 | }, 748 | { 749 | "icon_id": "24879596", 750 | "name": "help-filled", 751 | "font_class": "help-filled", 752 | "unicode": "e674", 753 | "unicode_decimal": 58996 754 | }, 755 | { 756 | "icon_id": "24879597", 757 | "name": "plus-filled", 758 | "font_class": "paperplane-filled", 759 | "unicode": "e675", 760 | "unicode_decimal": 58997 761 | }, 762 | { 763 | "icon_id": "24879598", 764 | "name": "plus", 765 | "font_class": "plus", 766 | "unicode": "e676", 767 | "unicode_decimal": 58998 768 | }, 769 | { 770 | "icon_id": "24879599", 771 | "name": "mic-filled", 772 | "font_class": "mic-filled", 773 | "unicode": "e677", 774 | "unicode_decimal": 58999 775 | }, 776 | { 777 | "icon_id": "24879600", 778 | "name": "image-filled", 779 | "font_class": "image-filled", 780 | "unicode": "e678", 781 | "unicode_decimal": 59000 782 | }, 783 | { 784 | "icon_id": "24855900", 785 | "name": "locked-filled", 786 | "font_class": "locked-filled", 787 | "unicode": "e668", 788 | "unicode_decimal": 58984 789 | }, 790 | { 791 | "icon_id": "24855901", 792 | "name": "info", 793 | "font_class": "info", 794 | "unicode": "e669", 795 | "unicode_decimal": 58985 796 | }, 797 | { 798 | "icon_id": "24855903", 799 | "name": "locked", 800 | "font_class": "locked", 801 | "unicode": "e66b", 802 | "unicode_decimal": 58987 803 | }, 804 | { 805 | "icon_id": "24855884", 806 | "name": "camera-filled", 807 | "font_class": "camera-filled", 808 | "unicode": "e658", 809 | "unicode_decimal": 58968 810 | }, 811 | { 812 | "icon_id": "24855885", 813 | "name": "chat-filled", 814 | "font_class": "chat-filled", 815 | "unicode": "e659", 816 | "unicode_decimal": 58969 817 | }, 818 | { 819 | "icon_id": "24855886", 820 | "name": "camera", 821 | "font_class": "camera", 822 | "unicode": "e65a", 823 | "unicode_decimal": 58970 824 | }, 825 | { 826 | "icon_id": "24855887", 827 | "name": "circle", 828 | "font_class": "circle", 829 | "unicode": "e65b", 830 | "unicode_decimal": 58971 831 | }, 832 | { 833 | "icon_id": "24855888", 834 | "name": "checkmarkempty", 835 | "font_class": "checkmarkempty", 836 | "unicode": "e65c", 837 | "unicode_decimal": 58972 838 | }, 839 | { 840 | "icon_id": "24855889", 841 | "name": "chat", 842 | "font_class": "chat", 843 | "unicode": "e65d", 844 | "unicode_decimal": 58973 845 | }, 846 | { 847 | "icon_id": "24855890", 848 | "name": "circle-filled", 849 | "font_class": "circle-filled", 850 | "unicode": "e65e", 851 | "unicode_decimal": 58974 852 | }, 853 | { 854 | "icon_id": "24855891", 855 | "name": "flag", 856 | "font_class": "flag", 857 | "unicode": "e65f", 858 | "unicode_decimal": 58975 859 | }, 860 | { 861 | "icon_id": "24855892", 862 | "name": "flag-filled", 863 | "font_class": "flag-filled", 864 | "unicode": "e660", 865 | "unicode_decimal": 58976 866 | }, 867 | { 868 | "icon_id": "24855893", 869 | "name": "gear-filled", 870 | "font_class": "gear-filled", 871 | "unicode": "e661", 872 | "unicode_decimal": 58977 873 | }, 874 | { 875 | "icon_id": "24855894", 876 | "name": "home", 877 | "font_class": "home", 878 | "unicode": "e662", 879 | "unicode_decimal": 58978 880 | }, 881 | { 882 | "icon_id": "24855895", 883 | "name": "home-filled", 884 | "font_class": "home-filled", 885 | "unicode": "e663", 886 | "unicode_decimal": 58979 887 | }, 888 | { 889 | "icon_id": "24855896", 890 | "name": "gear", 891 | "font_class": "gear", 892 | "unicode": "e664", 893 | "unicode_decimal": 58980 894 | }, 895 | { 896 | "icon_id": "24855897", 897 | "name": "smallcircle-filled", 898 | "font_class": "smallcircle-filled", 899 | "unicode": "e665", 900 | "unicode_decimal": 58981 901 | }, 902 | { 903 | "icon_id": "24855898", 904 | "name": "map-filled", 905 | "font_class": "map-filled", 906 | "unicode": "e666", 907 | "unicode_decimal": 58982 908 | }, 909 | { 910 | "icon_id": "24855899", 911 | "name": "map", 912 | "font_class": "map", 913 | "unicode": "e667", 914 | "unicode_decimal": 58983 915 | }, 916 | { 917 | "icon_id": "24855825", 918 | "name": "refresh-filled", 919 | "font_class": "refresh-filled", 920 | "unicode": "e656", 921 | "unicode_decimal": 58966 922 | }, 923 | { 924 | "icon_id": "24855826", 925 | "name": "refresh", 926 | "font_class": "refresh", 927 | "unicode": "e657", 928 | "unicode_decimal": 58967 929 | }, 930 | { 931 | "icon_id": "24855808", 932 | "name": "cloud-upload", 933 | "font_class": "cloud-upload", 934 | "unicode": "e645", 935 | "unicode_decimal": 58949 936 | }, 937 | { 938 | "icon_id": "24855809", 939 | "name": "cloud-download-filled", 940 | "font_class": "cloud-download-filled", 941 | "unicode": "e646", 942 | "unicode_decimal": 58950 943 | }, 944 | { 945 | "icon_id": "24855810", 946 | "name": "cloud-download", 947 | "font_class": "cloud-download", 948 | "unicode": "e647", 949 | "unicode_decimal": 58951 950 | }, 951 | { 952 | "icon_id": "24855811", 953 | "name": "cloud-upload-filled", 954 | "font_class": "cloud-upload-filled", 955 | "unicode": "e648", 956 | "unicode_decimal": 58952 957 | }, 958 | { 959 | "icon_id": "24855813", 960 | "name": "redo", 961 | "font_class": "redo", 962 | "unicode": "e64a", 963 | "unicode_decimal": 58954 964 | }, 965 | { 966 | "icon_id": "24855814", 967 | "name": "images-filled", 968 | "font_class": "images-filled", 969 | "unicode": "e64b", 970 | "unicode_decimal": 58955 971 | }, 972 | { 973 | "icon_id": "24855815", 974 | "name": "undo-filled", 975 | "font_class": "undo-filled", 976 | "unicode": "e64c", 977 | "unicode_decimal": 58956 978 | }, 979 | { 980 | "icon_id": "24855816", 981 | "name": "more", 982 | "font_class": "more", 983 | "unicode": "e64d", 984 | "unicode_decimal": 58957 985 | }, 986 | { 987 | "icon_id": "24855817", 988 | "name": "more-filled", 989 | "font_class": "more-filled", 990 | "unicode": "e64e", 991 | "unicode_decimal": 58958 992 | }, 993 | { 994 | "icon_id": "24855818", 995 | "name": "undo", 996 | "font_class": "undo", 997 | "unicode": "e64f", 998 | "unicode_decimal": 58959 999 | }, 1000 | { 1001 | "icon_id": "24855819", 1002 | "name": "images", 1003 | "font_class": "images", 1004 | "unicode": "e650", 1005 | "unicode_decimal": 58960 1006 | }, 1007 | { 1008 | "icon_id": "24855821", 1009 | "name": "paperclip", 1010 | "font_class": "paperclip", 1011 | "unicode": "e652", 1012 | "unicode_decimal": 58962 1013 | }, 1014 | { 1015 | "icon_id": "24855822", 1016 | "name": "settings", 1017 | "font_class": "settings", 1018 | "unicode": "e653", 1019 | "unicode_decimal": 58963 1020 | }, 1021 | { 1022 | "icon_id": "24855823", 1023 | "name": "search", 1024 | "font_class": "search", 1025 | "unicode": "e654", 1026 | "unicode_decimal": 58964 1027 | }, 1028 | { 1029 | "icon_id": "24855824", 1030 | "name": "redo-filled", 1031 | "font_class": "redo-filled", 1032 | "unicode": "e655", 1033 | "unicode_decimal": 58965 1034 | }, 1035 | { 1036 | "icon_id": "24841702", 1037 | "name": "list", 1038 | "font_class": "list", 1039 | "unicode": "e644", 1040 | "unicode_decimal": 58948 1041 | }, 1042 | { 1043 | "icon_id": "24841489", 1044 | "name": "mail-open-filled", 1045 | "font_class": "mail-open-filled", 1046 | "unicode": "e63a", 1047 | "unicode_decimal": 58938 1048 | }, 1049 | { 1050 | "icon_id": "24841491", 1051 | "name": "hand-thumbsdown-filled", 1052 | "font_class": "hand-down-filled", 1053 | "unicode": "e63c", 1054 | "unicode_decimal": 58940 1055 | }, 1056 | { 1057 | "icon_id": "24841492", 1058 | "name": "hand-thumbsdown", 1059 | "font_class": "hand-down", 1060 | "unicode": "e63d", 1061 | "unicode_decimal": 58941 1062 | }, 1063 | { 1064 | "icon_id": "24841493", 1065 | "name": "hand-thumbsup-filled", 1066 | "font_class": "hand-up-filled", 1067 | "unicode": "e63e", 1068 | "unicode_decimal": 58942 1069 | }, 1070 | { 1071 | "icon_id": "24841494", 1072 | "name": "hand-thumbsup", 1073 | "font_class": "hand-up", 1074 | "unicode": "e63f", 1075 | "unicode_decimal": 58943 1076 | }, 1077 | { 1078 | "icon_id": "24841496", 1079 | "name": "heart-filled", 1080 | "font_class": "heart-filled", 1081 | "unicode": "e641", 1082 | "unicode_decimal": 58945 1083 | }, 1084 | { 1085 | "icon_id": "24841498", 1086 | "name": "mail-open", 1087 | "font_class": "mail-open", 1088 | "unicode": "e643", 1089 | "unicode_decimal": 58947 1090 | }, 1091 | { 1092 | "icon_id": "24841488", 1093 | "name": "heart", 1094 | "font_class": "heart", 1095 | "unicode": "e639", 1096 | "unicode_decimal": 58937 1097 | }, 1098 | { 1099 | "icon_id": "24839963", 1100 | "name": "loop", 1101 | "font_class": "loop", 1102 | "unicode": "e633", 1103 | "unicode_decimal": 58931 1104 | }, 1105 | { 1106 | "icon_id": "24839866", 1107 | "name": "pulldown", 1108 | "font_class": "pulldown", 1109 | "unicode": "e632", 1110 | "unicode_decimal": 58930 1111 | }, 1112 | { 1113 | "icon_id": "24813798", 1114 | "name": "scan", 1115 | "font_class": "scan", 1116 | "unicode": "e62a", 1117 | "unicode_decimal": 58922 1118 | }, 1119 | { 1120 | "icon_id": "24813786", 1121 | "name": "bars", 1122 | "font_class": "bars", 1123 | "unicode": "e627", 1124 | "unicode_decimal": 58919 1125 | }, 1126 | { 1127 | "icon_id": "24813788", 1128 | "name": "cart-filled", 1129 | "font_class": "cart-filled", 1130 | "unicode": "e629", 1131 | "unicode_decimal": 58921 1132 | }, 1133 | { 1134 | "icon_id": "24813790", 1135 | "name": "checkbox", 1136 | "font_class": "checkbox", 1137 | "unicode": "e62b", 1138 | "unicode_decimal": 58923 1139 | }, 1140 | { 1141 | "icon_id": "24813791", 1142 | "name": "checkbox-filled", 1143 | "font_class": "checkbox-filled", 1144 | "unicode": "e62c", 1145 | "unicode_decimal": 58924 1146 | }, 1147 | { 1148 | "icon_id": "24813794", 1149 | "name": "shop", 1150 | "font_class": "shop", 1151 | "unicode": "e62f", 1152 | "unicode_decimal": 58927 1153 | }, 1154 | { 1155 | "icon_id": "24813795", 1156 | "name": "headphones", 1157 | "font_class": "headphones", 1158 | "unicode": "e630", 1159 | "unicode_decimal": 58928 1160 | }, 1161 | { 1162 | "icon_id": "24813796", 1163 | "name": "cart", 1164 | "font_class": "cart", 1165 | "unicode": "e631", 1166 | "unicode_decimal": 58929 1167 | } 1168 | ] 1169 | } 1170 | -------------------------------------------------------------------------------- /uni_modules/uni-icons/components/uni-icons/uni-icons.vue: -------------------------------------------------------------------------------- 1 | 9 | 10 | 80 | 81 | 97 | -------------------------------------------------------------------------------- /uni_modules/uni-icons/components/uni-icons/uniicons.css: -------------------------------------------------------------------------------- 1 | .uniui-color:before { 2 | content: "\e6cf"; 3 | } 4 | 5 | .uniui-wallet:before { 6 | content: "\e6b1"; 7 | } 8 | 9 | .uniui-settings-filled:before { 10 | content: "\e6ce"; 11 | } 12 | 13 | .uniui-auth-filled:before { 14 | content: "\e6cc"; 15 | } 16 | 17 | .uniui-shop-filled:before { 18 | content: "\e6cd"; 19 | } 20 | 21 | .uniui-staff-filled:before { 22 | content: "\e6cb"; 23 | } 24 | 25 | .uniui-vip-filled:before { 26 | content: "\e6c6"; 27 | } 28 | 29 | .uniui-plus-filled:before { 30 | content: "\e6c7"; 31 | } 32 | 33 | .uniui-folder-add-filled:before { 34 | content: "\e6c8"; 35 | } 36 | 37 | .uniui-color-filled:before { 38 | content: "\e6c9"; 39 | } 40 | 41 | .uniui-tune-filled:before { 42 | content: "\e6ca"; 43 | } 44 | 45 | .uniui-calendar-filled:before { 46 | content: "\e6c0"; 47 | } 48 | 49 | .uniui-notification-filled:before { 50 | content: "\e6c1"; 51 | } 52 | 53 | .uniui-wallet-filled:before { 54 | content: "\e6c2"; 55 | } 56 | 57 | .uniui-medal-filled:before { 58 | content: "\e6c3"; 59 | } 60 | 61 | .uniui-gift-filled:before { 62 | content: "\e6c4"; 63 | } 64 | 65 | .uniui-fire-filled:before { 66 | content: "\e6c5"; 67 | } 68 | 69 | .uniui-refreshempty:before { 70 | content: "\e6bf"; 71 | } 72 | 73 | .uniui-location-filled:before { 74 | content: "\e6af"; 75 | } 76 | 77 | .uniui-person-filled:before { 78 | content: "\e69d"; 79 | } 80 | 81 | .uniui-personadd-filled:before { 82 | content: "\e698"; 83 | } 84 | 85 | .uniui-back:before { 86 | content: "\e6b9"; 87 | } 88 | 89 | .uniui-forward:before { 90 | content: "\e6ba"; 91 | } 92 | 93 | .uniui-arrow-right:before { 94 | content: "\e6bb"; 95 | } 96 | 97 | .uniui-arrowthinright:before { 98 | content: "\e6bb"; 99 | } 100 | 101 | .uniui-arrow-left:before { 102 | content: "\e6bc"; 103 | } 104 | 105 | .uniui-arrowthinleft:before { 106 | content: "\e6bc"; 107 | } 108 | 109 | .uniui-arrow-up:before { 110 | content: "\e6bd"; 111 | } 112 | 113 | .uniui-arrowthinup:before { 114 | content: "\e6bd"; 115 | } 116 | 117 | .uniui-arrow-down:before { 118 | content: "\e6be"; 119 | } 120 | 121 | .uniui-arrowthindown:before { 122 | content: "\e6be"; 123 | } 124 | 125 | .uniui-bottom:before { 126 | content: "\e6b8"; 127 | } 128 | 129 | .uniui-arrowdown:before { 130 | content: "\e6b8"; 131 | } 132 | 133 | .uniui-right:before { 134 | content: "\e6b5"; 135 | } 136 | 137 | .uniui-arrowright:before { 138 | content: "\e6b5"; 139 | } 140 | 141 | .uniui-top:before { 142 | content: "\e6b6"; 143 | } 144 | 145 | .uniui-arrowup:before { 146 | content: "\e6b6"; 147 | } 148 | 149 | .uniui-left:before { 150 | content: "\e6b7"; 151 | } 152 | 153 | .uniui-arrowleft:before { 154 | content: "\e6b7"; 155 | } 156 | 157 | .uniui-eye:before { 158 | content: "\e651"; 159 | } 160 | 161 | .uniui-eye-filled:before { 162 | content: "\e66a"; 163 | } 164 | 165 | .uniui-eye-slash:before { 166 | content: "\e6b3"; 167 | } 168 | 169 | .uniui-eye-slash-filled:before { 170 | content: "\e6b4"; 171 | } 172 | 173 | .uniui-info-filled:before { 174 | content: "\e649"; 175 | } 176 | 177 | .uniui-reload:before { 178 | content: "\e6b2"; 179 | } 180 | 181 | .uniui-micoff-filled:before { 182 | content: "\e6b0"; 183 | } 184 | 185 | .uniui-map-pin-ellipse:before { 186 | content: "\e6ac"; 187 | } 188 | 189 | .uniui-map-pin:before { 190 | content: "\e6ad"; 191 | } 192 | 193 | .uniui-location:before { 194 | content: "\e6ae"; 195 | } 196 | 197 | .uniui-starhalf:before { 198 | content: "\e683"; 199 | } 200 | 201 | .uniui-star:before { 202 | content: "\e688"; 203 | } 204 | 205 | .uniui-star-filled:before { 206 | content: "\e68f"; 207 | } 208 | 209 | .uniui-calendar:before { 210 | content: "\e6a0"; 211 | } 212 | 213 | .uniui-fire:before { 214 | content: "\e6a1"; 215 | } 216 | 217 | .uniui-medal:before { 218 | content: "\e6a2"; 219 | } 220 | 221 | .uniui-font:before { 222 | content: "\e6a3"; 223 | } 224 | 225 | .uniui-gift:before { 226 | content: "\e6a4"; 227 | } 228 | 229 | .uniui-link:before { 230 | content: "\e6a5"; 231 | } 232 | 233 | .uniui-notification:before { 234 | content: "\e6a6"; 235 | } 236 | 237 | .uniui-staff:before { 238 | content: "\e6a7"; 239 | } 240 | 241 | .uniui-vip:before { 242 | content: "\e6a8"; 243 | } 244 | 245 | .uniui-folder-add:before { 246 | content: "\e6a9"; 247 | } 248 | 249 | .uniui-tune:before { 250 | content: "\e6aa"; 251 | } 252 | 253 | .uniui-auth:before { 254 | content: "\e6ab"; 255 | } 256 | 257 | .uniui-person:before { 258 | content: "\e699"; 259 | } 260 | 261 | .uniui-email-filled:before { 262 | content: "\e69a"; 263 | } 264 | 265 | .uniui-phone-filled:before { 266 | content: "\e69b"; 267 | } 268 | 269 | .uniui-phone:before { 270 | content: "\e69c"; 271 | } 272 | 273 | .uniui-email:before { 274 | content: "\e69e"; 275 | } 276 | 277 | .uniui-personadd:before { 278 | content: "\e69f"; 279 | } 280 | 281 | .uniui-chatboxes-filled:before { 282 | content: "\e692"; 283 | } 284 | 285 | .uniui-contact:before { 286 | content: "\e693"; 287 | } 288 | 289 | .uniui-chatbubble-filled:before { 290 | content: "\e694"; 291 | } 292 | 293 | .uniui-contact-filled:before { 294 | content: "\e695"; 295 | } 296 | 297 | .uniui-chatboxes:before { 298 | content: "\e696"; 299 | } 300 | 301 | .uniui-chatbubble:before { 302 | content: "\e697"; 303 | } 304 | 305 | .uniui-upload-filled:before { 306 | content: "\e68e"; 307 | } 308 | 309 | .uniui-upload:before { 310 | content: "\e690"; 311 | } 312 | 313 | .uniui-weixin:before { 314 | content: "\e691"; 315 | } 316 | 317 | .uniui-compose:before { 318 | content: "\e67f"; 319 | } 320 | 321 | .uniui-qq:before { 322 | content: "\e680"; 323 | } 324 | 325 | .uniui-download-filled:before { 326 | content: "\e681"; 327 | } 328 | 329 | .uniui-pyq:before { 330 | content: "\e682"; 331 | } 332 | 333 | .uniui-sound:before { 334 | content: "\e684"; 335 | } 336 | 337 | .uniui-trash-filled:before { 338 | content: "\e685"; 339 | } 340 | 341 | .uniui-sound-filled:before { 342 | content: "\e686"; 343 | } 344 | 345 | .uniui-trash:before { 346 | content: "\e687"; 347 | } 348 | 349 | .uniui-videocam-filled:before { 350 | content: "\e689"; 351 | } 352 | 353 | .uniui-spinner-cycle:before { 354 | content: "\e68a"; 355 | } 356 | 357 | .uniui-weibo:before { 358 | content: "\e68b"; 359 | } 360 | 361 | .uniui-videocam:before { 362 | content: "\e68c"; 363 | } 364 | 365 | .uniui-download:before { 366 | content: "\e68d"; 367 | } 368 | 369 | .uniui-help:before { 370 | content: "\e679"; 371 | } 372 | 373 | .uniui-navigate-filled:before { 374 | content: "\e67a"; 375 | } 376 | 377 | .uniui-plusempty:before { 378 | content: "\e67b"; 379 | } 380 | 381 | .uniui-smallcircle:before { 382 | content: "\e67c"; 383 | } 384 | 385 | .uniui-minus-filled:before { 386 | content: "\e67d"; 387 | } 388 | 389 | .uniui-micoff:before { 390 | content: "\e67e"; 391 | } 392 | 393 | .uniui-closeempty:before { 394 | content: "\e66c"; 395 | } 396 | 397 | .uniui-clear:before { 398 | content: "\e66d"; 399 | } 400 | 401 | .uniui-navigate:before { 402 | content: "\e66e"; 403 | } 404 | 405 | .uniui-minus:before { 406 | content: "\e66f"; 407 | } 408 | 409 | .uniui-image:before { 410 | content: "\e670"; 411 | } 412 | 413 | .uniui-mic:before { 414 | content: "\e671"; 415 | } 416 | 417 | .uniui-paperplane:before { 418 | content: "\e672"; 419 | } 420 | 421 | .uniui-close:before { 422 | content: "\e673"; 423 | } 424 | 425 | .uniui-help-filled:before { 426 | content: "\e674"; 427 | } 428 | 429 | .uniui-paperplane-filled:before { 430 | content: "\e675"; 431 | } 432 | 433 | .uniui-plus:before { 434 | content: "\e676"; 435 | } 436 | 437 | .uniui-mic-filled:before { 438 | content: "\e677"; 439 | } 440 | 441 | .uniui-image-filled:before { 442 | content: "\e678"; 443 | } 444 | 445 | .uniui-locked-filled:before { 446 | content: "\e668"; 447 | } 448 | 449 | .uniui-info:before { 450 | content: "\e669"; 451 | } 452 | 453 | .uniui-locked:before { 454 | content: "\e66b"; 455 | } 456 | 457 | .uniui-camera-filled:before { 458 | content: "\e658"; 459 | } 460 | 461 | .uniui-chat-filled:before { 462 | content: "\e659"; 463 | } 464 | 465 | .uniui-camera:before { 466 | content: "\e65a"; 467 | } 468 | 469 | .uniui-circle:before { 470 | content: "\e65b"; 471 | } 472 | 473 | .uniui-checkmarkempty:before { 474 | content: "\e65c"; 475 | } 476 | 477 | .uniui-chat:before { 478 | content: "\e65d"; 479 | } 480 | 481 | .uniui-circle-filled:before { 482 | content: "\e65e"; 483 | } 484 | 485 | .uniui-flag:before { 486 | content: "\e65f"; 487 | } 488 | 489 | .uniui-flag-filled:before { 490 | content: "\e660"; 491 | } 492 | 493 | .uniui-gear-filled:before { 494 | content: "\e661"; 495 | } 496 | 497 | .uniui-home:before { 498 | content: "\e662"; 499 | } 500 | 501 | .uniui-home-filled:before { 502 | content: "\e663"; 503 | } 504 | 505 | .uniui-gear:before { 506 | content: "\e664"; 507 | } 508 | 509 | .uniui-smallcircle-filled:before { 510 | content: "\e665"; 511 | } 512 | 513 | .uniui-map-filled:before { 514 | content: "\e666"; 515 | } 516 | 517 | .uniui-map:before { 518 | content: "\e667"; 519 | } 520 | 521 | .uniui-refresh-filled:before { 522 | content: "\e656"; 523 | } 524 | 525 | .uniui-refresh:before { 526 | content: "\e657"; 527 | } 528 | 529 | .uniui-cloud-upload:before { 530 | content: "\e645"; 531 | } 532 | 533 | .uniui-cloud-download-filled:before { 534 | content: "\e646"; 535 | } 536 | 537 | .uniui-cloud-download:before { 538 | content: "\e647"; 539 | } 540 | 541 | .uniui-cloud-upload-filled:before { 542 | content: "\e648"; 543 | } 544 | 545 | .uniui-redo:before { 546 | content: "\e64a"; 547 | } 548 | 549 | .uniui-images-filled:before { 550 | content: "\e64b"; 551 | } 552 | 553 | .uniui-undo-filled:before { 554 | content: "\e64c"; 555 | } 556 | 557 | .uniui-more:before { 558 | content: "\e64d"; 559 | } 560 | 561 | .uniui-more-filled:before { 562 | content: "\e64e"; 563 | } 564 | 565 | .uniui-undo:before { 566 | content: "\e64f"; 567 | } 568 | 569 | .uniui-images:before { 570 | content: "\e650"; 571 | } 572 | 573 | .uniui-paperclip:before { 574 | content: "\e652"; 575 | } 576 | 577 | .uniui-settings:before { 578 | content: "\e653"; 579 | } 580 | 581 | .uniui-search:before { 582 | content: "\e654"; 583 | } 584 | 585 | .uniui-redo-filled:before { 586 | content: "\e655"; 587 | } 588 | 589 | .uniui-list:before { 590 | content: "\e644"; 591 | } 592 | 593 | .uniui-mail-open-filled:before { 594 | content: "\e63a"; 595 | } 596 | 597 | .uniui-hand-down-filled:before { 598 | content: "\e63c"; 599 | } 600 | 601 | .uniui-hand-down:before { 602 | content: "\e63d"; 603 | } 604 | 605 | .uniui-hand-up-filled:before { 606 | content: "\e63e"; 607 | } 608 | 609 | .uniui-hand-up:before { 610 | content: "\e63f"; 611 | } 612 | 613 | .uniui-heart-filled:before { 614 | content: "\e641"; 615 | } 616 | 617 | .uniui-mail-open:before { 618 | content: "\e643"; 619 | } 620 | 621 | .uniui-heart:before { 622 | content: "\e639"; 623 | } 624 | 625 | .uniui-loop:before { 626 | content: "\e633"; 627 | } 628 | 629 | .uniui-pulldown:before { 630 | content: "\e632"; 631 | } 632 | 633 | .uniui-scan:before { 634 | content: "\e62a"; 635 | } 636 | 637 | .uniui-bars:before { 638 | content: "\e627"; 639 | } 640 | 641 | .uniui-cart-filled:before { 642 | content: "\e629"; 643 | } 644 | 645 | .uniui-checkbox:before { 646 | content: "\e62b"; 647 | } 648 | 649 | .uniui-checkbox-filled:before { 650 | content: "\e62c"; 651 | } 652 | 653 | .uniui-shop:before { 654 | content: "\e62f"; 655 | } 656 | 657 | .uniui-headphones:before { 658 | content: "\e630"; 659 | } 660 | 661 | .uniui-cart:before { 662 | content: "\e631"; 663 | } 664 | -------------------------------------------------------------------------------- /uni_modules/uni-icons/components/uni-icons/uniicons.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/super6wenzi/chatGPT-wx/d26848a360abfb91ccd613a35e0e0b2f8c4e00d7/uni_modules/uni-icons/components/uni-icons/uniicons.ttf -------------------------------------------------------------------------------- /uni_modules/uni-icons/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "id": "uni-icons", 3 | "displayName": "uni-icons 图标", 4 | "version": "1.3.5", 5 | "description": "图标组件,用于展示移动端常见的图标,可自定义颜色、大小。", 6 | "keywords": [ 7 | "uni-ui", 8 | "uniui", 9 | "icon", 10 | "图标" 11 | ], 12 | "repository": "https://github.com/dcloudio/uni-ui", 13 | "engines": { 14 | "HBuilderX": "^3.2.14" 15 | }, 16 | "directories": { 17 | "example": "../../temps/example_temps" 18 | }, 19 | "dcloudext": { 20 | "category": [ 21 | "前端组件", 22 | "通用组件" 23 | ], 24 | "sale": { 25 | "regular": { 26 | "price": "0.00" 27 | }, 28 | "sourcecode": { 29 | "price": "0.00" 30 | } 31 | }, 32 | "contact": { 33 | "qq": "" 34 | }, 35 | "declaration": { 36 | "ads": "无", 37 | "data": "无", 38 | "permissions": "无" 39 | }, 40 | "npmurl": "https://www.npmjs.com/package/@dcloudio/uni-ui" 41 | }, 42 | "uni_modules": { 43 | "dependencies": ["uni-scss"], 44 | "encrypt": [], 45 | "platforms": { 46 | "cloud": { 47 | "tcb": "y", 48 | "aliyun": "y" 49 | }, 50 | "client": { 51 | "App": { 52 | "app-vue": "y", 53 | "app-nvue": "y" 54 | }, 55 | "H5-mobile": { 56 | "Safari": "y", 57 | "Android Browser": "y", 58 | "微信浏览器(Android)": "y", 59 | "QQ浏览器(Android)": "y" 60 | }, 61 | "H5-pc": { 62 | "Chrome": "y", 63 | "IE": "y", 64 | "Edge": "y", 65 | "Firefox": "y", 66 | "Safari": "y" 67 | }, 68 | "小程序": { 69 | "微信": "y", 70 | "阿里": "y", 71 | "百度": "y", 72 | "字节跳动": "y", 73 | "QQ": "y" 74 | }, 75 | "快应用": { 76 | "华为": "u", 77 | "联盟": "u" 78 | }, 79 | "Vue": { 80 | "vue2": "y", 81 | "vue3": "y" 82 | } 83 | } 84 | } 85 | } 86 | } -------------------------------------------------------------------------------- /uni_modules/uni-icons/readme.md: -------------------------------------------------------------------------------- 1 | ## Icons 图标 2 | > **组件名:uni-icons** 3 | > 代码块: `uIcons` 4 | 5 | 用于展示 icons 图标 。 6 | 7 | ### [查看文档](https://uniapp.dcloud.io/component/uniui/uni-icons) 8 | #### 如使用过程中有任何问题,或者您对uni-ui有一些好的建议,欢迎加入 uni-ui 交流群:871950839 9 | -------------------------------------------------------------------------------- /uni_modules/uni-popup/changelog.md: -------------------------------------------------------------------------------- 1 | ## 1.8.1(2022-12-01) 2 | - 修复 nvue 下 v-show 报错 3 | ## 1.8.0(2022-11-29) 4 | - 优化 主题样式 5 | ## 1.7.9(2022-04-02) 6 | - 修复 弹出层内部无法滚动的bug 7 | ## 1.7.8(2022-03-28) 8 | - 修复 小程序中高度错误的bug 9 | ## 1.7.7(2022-03-17) 10 | - 修复 快速调用open出现问题的Bug 11 | ## 1.7.6(2022-02-14) 12 | - 修复 safeArea 属性不能设置为false的bug 13 | ## 1.7.5(2022-01-19) 14 | - 修复 isMaskClick 失效的bug 15 | ## 1.7.4(2022-01-19) 16 | - 新增 cancelText \ confirmText 属性 ,可自定义文本 17 | - 新增 maskBackgroundColor 属性 ,可以修改蒙版颜色 18 | - 优化 maskClick属性 更新为 isMaskClick ,解决微信小程序警告的问题 19 | ## 1.7.3(2022-01-13) 20 | - 修复 设置 safeArea 属性不生效的bug 21 | ## 1.7.2(2021-11-26) 22 | - 优化 组件示例 23 | ## 1.7.1(2021-11-26) 24 | - 修复 vuedoc 文字错误 25 | ## 1.7.0(2021-11-19) 26 | - 优化 组件UI,并提供设计资源,详见:[https://uniapp.dcloud.io/component/uniui/resource](https://uniapp.dcloud.io/component/uniui/resource) 27 | - 文档迁移,详见:[https://uniapp.dcloud.io/component/uniui/uni-popup](https://uniapp.dcloud.io/component/uniui/uni-popup) 28 | ## 1.6.2(2021-08-24) 29 | - 新增 支持国际化 30 | ## 1.6.1(2021-07-30) 31 | - 优化 vue3下事件警告的问题 32 | ## 1.6.0(2021-07-13) 33 | - 组件兼容 vue3,如何创建vue3项目,详见 [uni-app 项目支持 vue3 介绍](https://ask.dcloud.net.cn/article/37834) 34 | ## 1.5.0(2021-06-23) 35 | - 新增 mask-click 遮罩层点击事件 36 | ## 1.4.5(2021-06-22) 37 | - 修复 nvue 平台中间弹出后,点击内容,再点击遮罩无法关闭的Bug 38 | ## 1.4.4(2021-06-18) 39 | - 修复 H5平台中间弹出后,点击内容,再点击遮罩无法关闭的Bug 40 | ## 1.4.3(2021-06-08) 41 | - 修复 错误的 watch 字段 42 | - 修复 safeArea 属性不生效的问题 43 | - 修复 点击内容,再点击遮罩无法关闭的Bug 44 | ## 1.4.2(2021-05-12) 45 | - 新增 组件示例地址 46 | ## 1.4.1(2021-04-29) 47 | - 修复 组件内放置 input 、textarea 组件,无法聚焦的问题 48 | ## 1.4.0 (2021-04-29) 49 | - 新增 type 属性的 left\right 值,支持左右弹出 50 | - 新增 open(String:type) 方法参数 ,可以省略 type 属性 ,直接传入类型打开指定弹窗 51 | - 新增 backgroundColor 属性,可定义主窗口背景色,默认不显示背景色 52 | - 新增 safeArea 属性,是否适配底部安全区 53 | - 修复 App\h5\微信小程序底部安全区占位不对的Bug 54 | - 修复 App 端弹出等待的Bug 55 | - 优化 提升低配设备性能,优化动画卡顿问题 56 | - 优化 更简单的组件自定义方式 57 | ## 1.2.9(2021-02-05) 58 | - 优化 组件引用关系,通过uni_modules引用组件 59 | ## 1.2.8(2021-02-05) 60 | - 调整为uni_modules目录规范 61 | ## 1.2.7(2021-02-05) 62 | - 调整为uni_modules目录规范 63 | - 新增 支持 PC 端 64 | - 新增 uni-popup-message 、uni-popup-dialog扩展组件支持 PC 端 65 | -------------------------------------------------------------------------------- /uni_modules/uni-popup/components/uni-popup-dialog/keypress.js: -------------------------------------------------------------------------------- 1 | // #ifdef H5 2 | export default { 3 | name: 'Keypress', 4 | props: { 5 | disable: { 6 | type: Boolean, 7 | default: false 8 | } 9 | }, 10 | mounted () { 11 | const keyNames = { 12 | esc: ['Esc', 'Escape'], 13 | tab: 'Tab', 14 | enter: 'Enter', 15 | space: [' ', 'Spacebar'], 16 | up: ['Up', 'ArrowUp'], 17 | left: ['Left', 'ArrowLeft'], 18 | right: ['Right', 'ArrowRight'], 19 | down: ['Down', 'ArrowDown'], 20 | delete: ['Backspace', 'Delete', 'Del'] 21 | } 22 | const listener = ($event) => { 23 | if (this.disable) { 24 | return 25 | } 26 | const keyName = Object.keys(keyNames).find(key => { 27 | const keyName = $event.key 28 | const value = keyNames[key] 29 | return value === keyName || (Array.isArray(value) && value.includes(keyName)) 30 | }) 31 | if (keyName) { 32 | // 避免和其他按键事件冲突 33 | setTimeout(() => { 34 | this.$emit(keyName, {}) 35 | }, 0) 36 | } 37 | } 38 | document.addEventListener('keyup', listener) 39 | this.$once('hook:beforeDestroy', () => { 40 | document.removeEventListener('keyup', listener) 41 | }) 42 | }, 43 | render: () => {} 44 | } 45 | // #endif 46 | -------------------------------------------------------------------------------- /uni_modules/uni-popup/components/uni-popup-dialog/uni-popup-dialog.vue: -------------------------------------------------------------------------------- 1 | 27 | 28 | 172 | 173 | 277 | -------------------------------------------------------------------------------- /uni_modules/uni-popup/components/uni-popup-message/uni-popup-message.vue: -------------------------------------------------------------------------------- 1 | 10 | 11 | 74 | 144 | -------------------------------------------------------------------------------- /uni_modules/uni-popup/components/uni-popup-share/uni-popup-share.vue: -------------------------------------------------------------------------------- 1 | 18 | 19 | 106 | 188 | -------------------------------------------------------------------------------- /uni_modules/uni-popup/components/uni-popup/i18n/en.json: -------------------------------------------------------------------------------- 1 | { 2 | "uni-popup.cancel": "cancel", 3 | "uni-popup.ok": "ok", 4 | "uni-popup.placeholder": "pleace enter", 5 | "uni-popup.title": "Hint", 6 | "uni-popup.shareTitle": "Share to" 7 | } 8 | -------------------------------------------------------------------------------- /uni_modules/uni-popup/components/uni-popup/i18n/index.js: -------------------------------------------------------------------------------- 1 | import en from './en.json' 2 | import zhHans from './zh-Hans.json' 3 | import zhHant from './zh-Hant.json' 4 | export default { 5 | en, 6 | 'zh-Hans': zhHans, 7 | 'zh-Hant': zhHant 8 | } 9 | -------------------------------------------------------------------------------- /uni_modules/uni-popup/components/uni-popup/i18n/zh-Hans.json: -------------------------------------------------------------------------------- 1 | { 2 | "uni-popup.cancel": "取消", 3 | "uni-popup.ok": "确定", 4 | "uni-popup.placeholder": "请输入", 5 | "uni-popup.title": "提示", 6 | "uni-popup.shareTitle": "分享到" 7 | } 8 | -------------------------------------------------------------------------------- /uni_modules/uni-popup/components/uni-popup/i18n/zh-Hant.json: -------------------------------------------------------------------------------- 1 | { 2 | "uni-popup.cancel": "取消", 3 | "uni-popup.ok": "確定", 4 | "uni-popup.placeholder": "請輸入", 5 | "uni-popup.title": "提示", 6 | "uni-popup.shareTitle": "分享到" 7 | } 8 | -------------------------------------------------------------------------------- /uni_modules/uni-popup/components/uni-popup/keypress.js: -------------------------------------------------------------------------------- 1 | // #ifdef H5 2 | export default { 3 | name: 'Keypress', 4 | props: { 5 | disable: { 6 | type: Boolean, 7 | default: false 8 | } 9 | }, 10 | mounted () { 11 | const keyNames = { 12 | esc: ['Esc', 'Escape'], 13 | tab: 'Tab', 14 | enter: 'Enter', 15 | space: [' ', 'Spacebar'], 16 | up: ['Up', 'ArrowUp'], 17 | left: ['Left', 'ArrowLeft'], 18 | right: ['Right', 'ArrowRight'], 19 | down: ['Down', 'ArrowDown'], 20 | delete: ['Backspace', 'Delete', 'Del'] 21 | } 22 | const listener = ($event) => { 23 | if (this.disable) { 24 | return 25 | } 26 | const keyName = Object.keys(keyNames).find(key => { 27 | const keyName = $event.key 28 | const value = keyNames[key] 29 | return value === keyName || (Array.isArray(value) && value.includes(keyName)) 30 | }) 31 | if (keyName) { 32 | // 避免和其他按键事件冲突 33 | setTimeout(() => { 34 | this.$emit(keyName, {}) 35 | }, 0) 36 | } 37 | } 38 | document.addEventListener('keyup', listener) 39 | // this.$once('hook:beforeDestroy', () => { 40 | // document.removeEventListener('keyup', listener) 41 | // }) 42 | }, 43 | render: () => {} 44 | } 45 | // #endif 46 | -------------------------------------------------------------------------------- /uni_modules/uni-popup/components/uni-popup/popup.js: -------------------------------------------------------------------------------- 1 | 2 | export default { 3 | data() { 4 | return { 5 | 6 | } 7 | }, 8 | created(){ 9 | this.popup = this.getParent() 10 | }, 11 | methods:{ 12 | /** 13 | * 获取父元素实例 14 | */ 15 | getParent(name = 'uniPopup') { 16 | let parent = this.$parent; 17 | let parentName = parent.$options.name; 18 | while (parentName !== name) { 19 | parent = parent.$parent; 20 | if (!parent) return false 21 | parentName = parent.$options.name; 22 | } 23 | return parent; 24 | }, 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /uni_modules/uni-popup/components/uni-popup/uni-popup.vue: -------------------------------------------------------------------------------- 1 | 18 | 19 | 423 | 475 | -------------------------------------------------------------------------------- /uni_modules/uni-popup/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "id": "uni-popup", 3 | "displayName": "uni-popup 弹出层", 4 | "version": "1.8.1", 5 | "description": " Popup 组件,提供常用的弹层", 6 | "keywords": [ 7 | "uni-ui", 8 | "弹出层", 9 | "弹窗", 10 | "popup", 11 | "弹框" 12 | ], 13 | "repository": "https://github.com/dcloudio/uni-ui", 14 | "engines": { 15 | "HBuilderX": "" 16 | }, 17 | "directories": { 18 | "example": "../../temps/example_temps" 19 | }, 20 | "dcloudext": { 21 | "sale": { 22 | "regular": { 23 | "price": "0.00" 24 | }, 25 | "sourcecode": { 26 | "price": "0.00" 27 | } 28 | }, 29 | "contact": { 30 | "qq": "" 31 | }, 32 | "declaration": { 33 | "ads": "无", 34 | "data": "无", 35 | "permissions": "无" 36 | }, 37 | "npmurl": "https://www.npmjs.com/package/@dcloudio/uni-ui", 38 | "type": "component-vue" 39 | }, 40 | "uni_modules": { 41 | "dependencies": [ 42 | "uni-scss", 43 | "uni-transition" 44 | ], 45 | "encrypt": [], 46 | "platforms": { 47 | "cloud": { 48 | "tcb": "y", 49 | "aliyun": "y" 50 | }, 51 | "client": { 52 | "App": { 53 | "app-vue": "y", 54 | "app-nvue": "y" 55 | }, 56 | "H5-mobile": { 57 | "Safari": "y", 58 | "Android Browser": "y", 59 | "微信浏览器(Android)": "y", 60 | "QQ浏览器(Android)": "y" 61 | }, 62 | "H5-pc": { 63 | "Chrome": "y", 64 | "IE": "y", 65 | "Edge": "y", 66 | "Firefox": "y", 67 | "Safari": "y" 68 | }, 69 | "小程序": { 70 | "微信": "y", 71 | "阿里": "y", 72 | "百度": "y", 73 | "字节跳动": "y", 74 | "QQ": "y" 75 | }, 76 | "快应用": { 77 | "华为": "u", 78 | "联盟": "u" 79 | }, 80 | "Vue": { 81 | "vue2": "y", 82 | "vue3": "y" 83 | } 84 | } 85 | } 86 | } 87 | } 88 | -------------------------------------------------------------------------------- /uni_modules/uni-popup/readme.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | ## Popup 弹出层 4 | > **组件名:uni-popup** 5 | > 代码块: `uPopup` 6 | > 关联组件:`uni-transition` 7 | 8 | 9 | 弹出层组件,在应用中弹出一个消息提示窗口、提示框等 10 | 11 | ### [查看文档](https://uniapp.dcloud.io/component/uniui/uni-popup) 12 | #### 如使用过程中有任何问题,或者您对uni-ui有一些好的建议,欢迎加入 uni-ui 交流群:871950839 13 | 14 | 15 | 16 | 17 | 18 | -------------------------------------------------------------------------------- /uni_modules/uni-scss/changelog.md: -------------------------------------------------------------------------------- 1 | ## 1.0.3(2022-01-21) 2 | - 优化 组件示例 3 | ## 1.0.2(2021-11-22) 4 | - 修复 / 符号在 vue 不同版本兼容问题引起的报错问题 5 | ## 1.0.1(2021-11-22) 6 | - 修复 vue3中scss语法兼容问题 7 | ## 1.0.0(2021-11-18) 8 | - init 9 | -------------------------------------------------------------------------------- /uni_modules/uni-scss/index.scss: -------------------------------------------------------------------------------- 1 | @import './styles/index.scss'; 2 | -------------------------------------------------------------------------------- /uni_modules/uni-scss/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "id": "uni-scss", 3 | "displayName": "uni-scss 辅助样式", 4 | "version": "1.0.3", 5 | "description": "uni-sass是uni-ui提供的一套全局样式 ,通过一些简单的类名和sass变量,实现简单的页面布局操作,比如颜色、边距、圆角等。", 6 | "keywords": [ 7 | "uni-scss", 8 | "uni-ui", 9 | "辅助样式" 10 | ], 11 | "repository": "https://github.com/dcloudio/uni-ui", 12 | "engines": { 13 | "HBuilderX": "^3.1.0" 14 | }, 15 | "dcloudext": { 16 | "category": [ 17 | "JS SDK", 18 | "通用 SDK" 19 | ], 20 | "sale": { 21 | "regular": { 22 | "price": "0.00" 23 | }, 24 | "sourcecode": { 25 | "price": "0.00" 26 | } 27 | }, 28 | "contact": { 29 | "qq": "" 30 | }, 31 | "declaration": { 32 | "ads": "无", 33 | "data": "无", 34 | "permissions": "无" 35 | }, 36 | "npmurl": "https://www.npmjs.com/package/@dcloudio/uni-ui" 37 | }, 38 | "uni_modules": { 39 | "dependencies": [], 40 | "encrypt": [], 41 | "platforms": { 42 | "cloud": { 43 | "tcb": "y", 44 | "aliyun": "y" 45 | }, 46 | "client": { 47 | "App": { 48 | "app-vue": "y", 49 | "app-nvue": "u" 50 | }, 51 | "H5-mobile": { 52 | "Safari": "y", 53 | "Android Browser": "y", 54 | "微信浏览器(Android)": "y", 55 | "QQ浏览器(Android)": "y" 56 | }, 57 | "H5-pc": { 58 | "Chrome": "y", 59 | "IE": "y", 60 | "Edge": "y", 61 | "Firefox": "y", 62 | "Safari": "y" 63 | }, 64 | "小程序": { 65 | "微信": "y", 66 | "阿里": "y", 67 | "百度": "y", 68 | "字节跳动": "y", 69 | "QQ": "y" 70 | }, 71 | "快应用": { 72 | "华为": "n", 73 | "联盟": "n" 74 | }, 75 | "Vue": { 76 | "vue2": "y", 77 | "vue3": "y" 78 | } 79 | } 80 | } 81 | } 82 | } 83 | -------------------------------------------------------------------------------- /uni_modules/uni-scss/readme.md: -------------------------------------------------------------------------------- 1 | `uni-sass` 是 `uni-ui`提供的一套全局样式 ,通过一些简单的类名和`sass`变量,实现简单的页面布局操作,比如颜色、边距、圆角等。 2 | 3 | ### [查看文档](https://uniapp.dcloud.io/component/uniui/uni-sass) 4 | #### 如使用过程中有任何问题,或者您对uni-ui有一些好的建议,欢迎加入 uni-ui 交流群:871950839 -------------------------------------------------------------------------------- /uni_modules/uni-scss/styles/index.scss: -------------------------------------------------------------------------------- 1 | @import './setting/_variables.scss'; 2 | @import './setting/_border.scss'; 3 | @import './setting/_color.scss'; 4 | @import './setting/_space.scss'; 5 | @import './setting/_radius.scss'; 6 | @import './setting/_text.scss'; 7 | @import './setting/_styles.scss'; 8 | -------------------------------------------------------------------------------- /uni_modules/uni-scss/styles/setting/_border.scss: -------------------------------------------------------------------------------- 1 | .uni-border { 2 | border: 1px $uni-border-1 solid; 3 | } -------------------------------------------------------------------------------- /uni_modules/uni-scss/styles/setting/_color.scss: -------------------------------------------------------------------------------- 1 | 2 | // TODO 暂时不需要 class ,需要用户使用变量实现 ,如果使用类名其实并不推荐 3 | // @mixin get-styles($k,$c) { 4 | // @if $k == size or $k == weight{ 5 | // font-#{$k}:#{$c} 6 | // }@else{ 7 | // #{$k}:#{$c} 8 | // } 9 | // } 10 | $uni-ui-color:( 11 | // 主色 12 | primary: $uni-primary, 13 | primary-disable: $uni-primary-disable, 14 | primary-light: $uni-primary-light, 15 | // 辅助色 16 | success: $uni-success, 17 | success-disable: $uni-success-disable, 18 | success-light: $uni-success-light, 19 | warning: $uni-warning, 20 | warning-disable: $uni-warning-disable, 21 | warning-light: $uni-warning-light, 22 | error: $uni-error, 23 | error-disable: $uni-error-disable, 24 | error-light: $uni-error-light, 25 | info: $uni-info, 26 | info-disable: $uni-info-disable, 27 | info-light: $uni-info-light, 28 | // 中性色 29 | main-color: $uni-main-color, 30 | base-color: $uni-base-color, 31 | secondary-color: $uni-secondary-color, 32 | extra-color: $uni-extra-color, 33 | // 背景色 34 | bg-color: $uni-bg-color, 35 | // 边框颜色 36 | border-1: $uni-border-1, 37 | border-2: $uni-border-2, 38 | border-3: $uni-border-3, 39 | border-4: $uni-border-4, 40 | // 黑色 41 | black:$uni-black, 42 | // 白色 43 | white:$uni-white, 44 | // 透明 45 | transparent:$uni-transparent 46 | ) !default; 47 | @each $key, $child in $uni-ui-color { 48 | .uni-#{"" + $key} { 49 | color: $child; 50 | } 51 | .uni-#{"" + $key}-bg { 52 | background-color: $child; 53 | } 54 | } 55 | .uni-shadow-sm { 56 | box-shadow: $uni-shadow-sm; 57 | } 58 | .uni-shadow-base { 59 | box-shadow: $uni-shadow-base; 60 | } 61 | .uni-shadow-lg { 62 | box-shadow: $uni-shadow-lg; 63 | } 64 | .uni-mask { 65 | background-color:$uni-mask; 66 | } 67 | -------------------------------------------------------------------------------- /uni_modules/uni-scss/styles/setting/_radius.scss: -------------------------------------------------------------------------------- 1 | @mixin radius($r,$d:null ,$important: false){ 2 | $radius-value:map-get($uni-radius, $r) if($important, !important, null); 3 | // Key exists within the $uni-radius variable 4 | @if (map-has-key($uni-radius, $r) and $d){ 5 | @if $d == t { 6 | border-top-left-radius:$radius-value; 7 | border-top-right-radius:$radius-value; 8 | }@else if $d == r { 9 | border-top-right-radius:$radius-value; 10 | border-bottom-right-radius:$radius-value; 11 | }@else if $d == b { 12 | border-bottom-left-radius:$radius-value; 13 | border-bottom-right-radius:$radius-value; 14 | }@else if $d == l { 15 | border-top-left-radius:$radius-value; 16 | border-bottom-left-radius:$radius-value; 17 | }@else if $d == tl { 18 | border-top-left-radius:$radius-value; 19 | }@else if $d == tr { 20 | border-top-right-radius:$radius-value; 21 | }@else if $d == br { 22 | border-bottom-right-radius:$radius-value; 23 | }@else if $d == bl { 24 | border-bottom-left-radius:$radius-value; 25 | } 26 | }@else{ 27 | border-radius:$radius-value; 28 | } 29 | } 30 | 31 | @each $key, $child in $uni-radius { 32 | @if($key){ 33 | .uni-radius-#{"" + $key} { 34 | @include radius($key) 35 | } 36 | }@else{ 37 | .uni-radius { 38 | @include radius($key) 39 | } 40 | } 41 | } 42 | 43 | @each $direction in t, r, b, l,tl, tr, br, bl { 44 | @each $key, $child in $uni-radius { 45 | @if($key){ 46 | .uni-radius-#{"" + $direction}-#{"" + $key} { 47 | @include radius($key,$direction,false) 48 | } 49 | }@else{ 50 | .uni-radius-#{$direction} { 51 | @include radius($key,$direction,false) 52 | } 53 | } 54 | } 55 | } 56 | -------------------------------------------------------------------------------- /uni_modules/uni-scss/styles/setting/_space.scss: -------------------------------------------------------------------------------- 1 | 2 | @mixin fn($space,$direction,$size,$n) { 3 | @if $n { 4 | #{$space}-#{$direction}: #{$size*$uni-space-root}px 5 | } @else { 6 | #{$space}-#{$direction}: #{-$size*$uni-space-root}px 7 | } 8 | } 9 | @mixin get-styles($direction,$i,$space,$n){ 10 | @if $direction == t { 11 | @include fn($space, top,$i,$n); 12 | } 13 | @if $direction == r { 14 | @include fn($space, right,$i,$n); 15 | } 16 | @if $direction == b { 17 | @include fn($space, bottom,$i,$n); 18 | } 19 | @if $direction == l { 20 | @include fn($space, left,$i,$n); 21 | } 22 | @if $direction == x { 23 | @include fn($space, left,$i,$n); 24 | @include fn($space, right,$i,$n); 25 | } 26 | @if $direction == y { 27 | @include fn($space, top,$i,$n); 28 | @include fn($space, bottom,$i,$n); 29 | } 30 | @if $direction == a { 31 | @if $n { 32 | #{$space}:#{$i*$uni-space-root}px; 33 | } @else { 34 | #{$space}:#{-$i*$uni-space-root}px; 35 | } 36 | } 37 | } 38 | 39 | @each $orientation in m,p { 40 | $space: margin; 41 | @if $orientation == m { 42 | $space: margin; 43 | } @else { 44 | $space: padding; 45 | } 46 | @for $i from 0 through 16 { 47 | @each $direction in t, r, b, l, x, y, a { 48 | .uni-#{$orientation}#{$direction}-#{$i} { 49 | @include get-styles($direction,$i,$space,true); 50 | } 51 | .uni-#{$orientation}#{$direction}-n#{$i} { 52 | @include get-styles($direction,$i,$space,false); 53 | } 54 | } 55 | } 56 | } -------------------------------------------------------------------------------- /uni_modules/uni-scss/styles/setting/_styles.scss: -------------------------------------------------------------------------------- 1 | /* #ifndef APP-NVUE */ 2 | 3 | $-color-white:#fff; 4 | $-color-black:#000; 5 | @mixin base-style($color) { 6 | color: #fff; 7 | background-color: $color; 8 | border-color: mix($-color-black, $color, 8%); 9 | &:not([hover-class]):active { 10 | background: mix($-color-black, $color, 10%); 11 | border-color: mix($-color-black, $color, 20%); 12 | color: $-color-white; 13 | outline: none; 14 | } 15 | } 16 | @mixin is-color($color) { 17 | @include base-style($color); 18 | &[loading] { 19 | @include base-style($color); 20 | &::before { 21 | margin-right:5px; 22 | } 23 | } 24 | &[disabled] { 25 | &, 26 | &[loading], 27 | &:not([hover-class]):active { 28 | color: $-color-white; 29 | border-color: mix(darken($color,10%), $-color-white); 30 | background-color: mix($color, $-color-white); 31 | } 32 | } 33 | 34 | } 35 | @mixin base-plain-style($color) { 36 | color:$color; 37 | background-color: mix($-color-white, $color, 90%); 38 | border-color: mix($-color-white, $color, 70%); 39 | &:not([hover-class]):active { 40 | background: mix($-color-white, $color, 80%); 41 | color: $color; 42 | outline: none; 43 | border-color: mix($-color-white, $color, 50%); 44 | } 45 | } 46 | @mixin is-plain($color){ 47 | &[plain] { 48 | @include base-plain-style($color); 49 | &[loading] { 50 | @include base-plain-style($color); 51 | &::before { 52 | margin-right:5px; 53 | } 54 | } 55 | &[disabled] { 56 | &, 57 | &:active { 58 | color: mix($-color-white, $color, 40%); 59 | background-color: mix($-color-white, $color, 90%); 60 | border-color: mix($-color-white, $color, 80%); 61 | } 62 | } 63 | } 64 | } 65 | 66 | 67 | .uni-btn { 68 | margin: 5px; 69 | color: #393939; 70 | border:1px solid #ccc; 71 | font-size: 16px; 72 | font-weight: 200; 73 | background-color: #F9F9F9; 74 | // TODO 暂时处理边框隐藏一边的问题 75 | overflow: visible; 76 | &::after{ 77 | border: none; 78 | } 79 | 80 | &:not([type]),&[type=default] { 81 | color: #999; 82 | &[loading] { 83 | background: none; 84 | &::before { 85 | margin-right:5px; 86 | } 87 | } 88 | 89 | 90 | 91 | &[disabled]{ 92 | color: mix($-color-white, #999, 60%); 93 | &, 94 | &[loading], 95 | &:active { 96 | color: mix($-color-white, #999, 60%); 97 | background-color: mix($-color-white,$-color-black , 98%); 98 | border-color: mix($-color-white, #999, 85%); 99 | } 100 | } 101 | 102 | &[plain] { 103 | color: #999; 104 | background: none; 105 | border-color: $uni-border-1; 106 | &:not([hover-class]):active { 107 | background: none; 108 | color: mix($-color-white, $-color-black, 80%); 109 | border-color: mix($-color-white, $-color-black, 90%); 110 | outline: none; 111 | } 112 | &[disabled]{ 113 | &, 114 | &[loading], 115 | &:active { 116 | background: none; 117 | color: mix($-color-white, #999, 60%); 118 | border-color: mix($-color-white, #999, 85%); 119 | } 120 | } 121 | } 122 | } 123 | 124 | &:not([hover-class]):active { 125 | color: mix($-color-white, $-color-black, 50%); 126 | } 127 | 128 | &[size=mini] { 129 | font-size: 16px; 130 | font-weight: 200; 131 | border-radius: 8px; 132 | } 133 | 134 | 135 | 136 | &.uni-btn-small { 137 | font-size: 14px; 138 | } 139 | &.uni-btn-mini { 140 | font-size: 12px; 141 | } 142 | 143 | &.uni-btn-radius { 144 | border-radius: 999px; 145 | } 146 | &[type=primary] { 147 | @include is-color($uni-primary); 148 | @include is-plain($uni-primary) 149 | } 150 | &[type=success] { 151 | @include is-color($uni-success); 152 | @include is-plain($uni-success) 153 | } 154 | &[type=error] { 155 | @include is-color($uni-error); 156 | @include is-plain($uni-error) 157 | } 158 | &[type=warning] { 159 | @include is-color($uni-warning); 160 | @include is-plain($uni-warning) 161 | } 162 | &[type=info] { 163 | @include is-color($uni-info); 164 | @include is-plain($uni-info) 165 | } 166 | } 167 | /* #endif */ 168 | -------------------------------------------------------------------------------- /uni_modules/uni-scss/styles/setting/_text.scss: -------------------------------------------------------------------------------- 1 | @mixin get-styles($k,$c) { 2 | @if $k == size or $k == weight{ 3 | font-#{$k}:#{$c} 4 | }@else{ 5 | #{$k}:#{$c} 6 | } 7 | } 8 | 9 | @each $key, $child in $uni-headings { 10 | /* #ifndef APP-NVUE */ 11 | .uni-#{$key} { 12 | @each $k, $c in $child { 13 | @include get-styles($k,$c) 14 | } 15 | } 16 | /* #endif */ 17 | /* #ifdef APP-NVUE */ 18 | .container .uni-#{$key} { 19 | @each $k, $c in $child { 20 | @include get-styles($k,$c) 21 | } 22 | } 23 | /* #endif */ 24 | } 25 | -------------------------------------------------------------------------------- /uni_modules/uni-scss/styles/setting/_variables.scss: -------------------------------------------------------------------------------- 1 | // @use "sass:math"; 2 | @import '../tools/functions.scss'; 3 | // 间距基础倍数 4 | $uni-space-root: 2 !default; 5 | // 边框半径默认值 6 | $uni-radius-root:5px !default; 7 | $uni-radius: () !default; 8 | // 边框半径断点 9 | $uni-radius: map-deep-merge( 10 | ( 11 | 0: 0, 12 | // TODO 当前版本暂时不支持 sm 属性 13 | // 'sm': math.div($uni-radius-root, 2), 14 | null: $uni-radius-root, 15 | 'lg': $uni-radius-root * 2, 16 | 'xl': $uni-radius-root * 6, 17 | 'pill': 9999px, 18 | 'circle': 50% 19 | ), 20 | $uni-radius 21 | ); 22 | // 字体家族 23 | $body-font-family: 'Roboto', sans-serif !default; 24 | // 文本 25 | $heading-font-family: $body-font-family !default; 26 | $uni-headings: () !default; 27 | $letterSpacing: -0.01562em; 28 | $uni-headings: map-deep-merge( 29 | ( 30 | 'h1': ( 31 | size: 32px, 32 | weight: 300, 33 | line-height: 50px, 34 | // letter-spacing:-0.01562em 35 | ), 36 | 'h2': ( 37 | size: 28px, 38 | weight: 300, 39 | line-height: 40px, 40 | // letter-spacing: -0.00833em 41 | ), 42 | 'h3': ( 43 | size: 24px, 44 | weight: 400, 45 | line-height: 32px, 46 | // letter-spacing: normal 47 | ), 48 | 'h4': ( 49 | size: 20px, 50 | weight: 400, 51 | line-height: 30px, 52 | // letter-spacing: 0.00735em 53 | ), 54 | 'h5': ( 55 | size: 16px, 56 | weight: 400, 57 | line-height: 24px, 58 | // letter-spacing: normal 59 | ), 60 | 'h6': ( 61 | size: 14px, 62 | weight: 500, 63 | line-height: 18px, 64 | // letter-spacing: 0.0125em 65 | ), 66 | 'subtitle': ( 67 | size: 12px, 68 | weight: 400, 69 | line-height: 20px, 70 | // letter-spacing: 0.00937em 71 | ), 72 | 'body': ( 73 | font-size: 14px, 74 | font-weight: 400, 75 | line-height: 22px, 76 | // letter-spacing: 0.03125em 77 | ), 78 | 'caption': ( 79 | 'size': 12px, 80 | 'weight': 400, 81 | 'line-height': 20px, 82 | // 'letter-spacing': 0.03333em, 83 | // 'text-transform': false 84 | ) 85 | ), 86 | $uni-headings 87 | ); 88 | 89 | 90 | 91 | // 主色 92 | $uni-primary: #2979ff !default; 93 | $uni-primary-disable:lighten($uni-primary,20%) !default; 94 | $uni-primary-light: lighten($uni-primary,25%) !default; 95 | 96 | // 辅助色 97 | // 除了主色外的场景色,需要在不同的场景中使用(例如危险色表示危险的操作)。 98 | $uni-success: #18bc37 !default; 99 | $uni-success-disable:lighten($uni-success,20%) !default; 100 | $uni-success-light: lighten($uni-success,25%) !default; 101 | 102 | $uni-warning: #f3a73f !default; 103 | $uni-warning-disable:lighten($uni-warning,20%) !default; 104 | $uni-warning-light: lighten($uni-warning,25%) !default; 105 | 106 | $uni-error: #e43d33 !default; 107 | $uni-error-disable:lighten($uni-error,20%) !default; 108 | $uni-error-light: lighten($uni-error,25%) !default; 109 | 110 | $uni-info: #8f939c !default; 111 | $uni-info-disable:lighten($uni-info,20%) !default; 112 | $uni-info-light: lighten($uni-info,25%) !default; 113 | 114 | // 中性色 115 | // 中性色用于文本、背景和边框颜色。通过运用不同的中性色,来表现层次结构。 116 | $uni-main-color: #3a3a3a !default; // 主要文字 117 | $uni-base-color: #6a6a6a !default; // 常规文字 118 | $uni-secondary-color: #909399 !default; // 次要文字 119 | $uni-extra-color: #c7c7c7 !default; // 辅助说明 120 | 121 | // 边框颜色 122 | $uni-border-1: #F0F0F0 !default; 123 | $uni-border-2: #EDEDED !default; 124 | $uni-border-3: #DCDCDC !default; 125 | $uni-border-4: #B9B9B9 !default; 126 | 127 | // 常规色 128 | $uni-black: #000000 !default; 129 | $uni-white: #ffffff !default; 130 | $uni-transparent: rgba($color: #000000, $alpha: 0) !default; 131 | 132 | // 背景色 133 | $uni-bg-color: #f7f7f7 !default; 134 | 135 | /* 水平间距 */ 136 | $uni-spacing-sm: 8px !default; 137 | $uni-spacing-base: 15px !default; 138 | $uni-spacing-lg: 30px !default; 139 | 140 | // 阴影 141 | $uni-shadow-sm:0 0 5px rgba($color: #d8d8d8, $alpha: 0.5) !default; 142 | $uni-shadow-base:0 1px 8px 1px rgba($color: #a5a5a5, $alpha: 0.2) !default; 143 | $uni-shadow-lg:0px 1px 10px 2px rgba($color: #a5a4a4, $alpha: 0.5) !default; 144 | 145 | // 蒙版 146 | $uni-mask: rgba($color: #000000, $alpha: 0.4) !default; 147 | -------------------------------------------------------------------------------- /uni_modules/uni-scss/styles/tools/functions.scss: -------------------------------------------------------------------------------- 1 | // 合并 map 2 | @function map-deep-merge($parent-map, $child-map){ 3 | $result: $parent-map; 4 | @each $key, $child in $child-map { 5 | $parent-has-key: map-has-key($result, $key); 6 | $parent-value: map-get($result, $key); 7 | $parent-type: type-of($parent-value); 8 | $child-type: type-of($child); 9 | $parent-is-map: $parent-type == map; 10 | $child-is-map: $child-type == map; 11 | 12 | @if (not $parent-has-key) or ($parent-type != $child-type) or (not ($parent-is-map and $child-is-map)){ 13 | $result: map-merge($result, ( $key: $child )); 14 | }@else { 15 | $result: map-merge($result, ( $key: map-deep-merge($parent-value, $child) )); 16 | } 17 | } 18 | @return $result; 19 | }; 20 | -------------------------------------------------------------------------------- /uni_modules/uni-scss/theme.scss: -------------------------------------------------------------------------------- 1 | // 间距基础倍数 2 | $uni-space-root: 2; 3 | // 边框半径默认值 4 | $uni-radius-root:5px; 5 | // 主色 6 | $uni-primary: #2979ff; 7 | // 辅助色 8 | $uni-success: #4cd964; 9 | // 警告色 10 | $uni-warning: #f0ad4e; 11 | // 错误色 12 | $uni-error: #dd524d; 13 | // 描述色 14 | $uni-info: #909399; 15 | // 中性色 16 | $uni-main-color: #303133; 17 | $uni-base-color: #606266; 18 | $uni-secondary-color: #909399; 19 | $uni-extra-color: #C0C4CC; 20 | // 背景色 21 | $uni-bg-color: #f5f5f5; 22 | // 边框颜色 23 | $uni-border-1: #DCDFE6; 24 | $uni-border-2: #E4E7ED; 25 | $uni-border-3: #EBEEF5; 26 | $uni-border-4: #F2F6FC; 27 | 28 | // 常规色 29 | $uni-black: #000000; 30 | $uni-white: #ffffff; 31 | $uni-transparent: rgba($color: #000000, $alpha: 0); 32 | -------------------------------------------------------------------------------- /uni_modules/uni-scss/variables.scss: -------------------------------------------------------------------------------- 1 | @import './styles/setting/_variables.scss'; 2 | // 间距基础倍数 3 | $uni-space-root: 2; 4 | // 边框半径默认值 5 | $uni-radius-root:5px; 6 | 7 | // 主色 8 | $uni-primary: #2979ff; 9 | $uni-primary-disable:mix(#fff,$uni-primary,50%); 10 | $uni-primary-light: mix(#fff,$uni-primary,80%); 11 | 12 | // 辅助色 13 | // 除了主色外的场景色,需要在不同的场景中使用(例如危险色表示危险的操作)。 14 | $uni-success: #18bc37; 15 | $uni-success-disable:mix(#fff,$uni-success,50%); 16 | $uni-success-light: mix(#fff,$uni-success,80%); 17 | 18 | $uni-warning: #f3a73f; 19 | $uni-warning-disable:mix(#fff,$uni-warning,50%); 20 | $uni-warning-light: mix(#fff,$uni-warning,80%); 21 | 22 | $uni-error: #e43d33; 23 | $uni-error-disable:mix(#fff,$uni-error,50%); 24 | $uni-error-light: mix(#fff,$uni-error,80%); 25 | 26 | $uni-info: #8f939c; 27 | $uni-info-disable:mix(#fff,$uni-info,50%); 28 | $uni-info-light: mix(#fff,$uni-info,80%); 29 | 30 | // 中性色 31 | // 中性色用于文本、背景和边框颜色。通过运用不同的中性色,来表现层次结构。 32 | $uni-main-color: #3a3a3a; // 主要文字 33 | $uni-base-color: #6a6a6a; // 常规文字 34 | $uni-secondary-color: #909399; // 次要文字 35 | $uni-extra-color: #c7c7c7; // 辅助说明 36 | 37 | // 边框颜色 38 | $uni-border-1: #F0F0F0; 39 | $uni-border-2: #EDEDED; 40 | $uni-border-3: #DCDCDC; 41 | $uni-border-4: #B9B9B9; 42 | 43 | // 常规色 44 | $uni-black: #000000; 45 | $uni-white: #ffffff; 46 | $uni-transparent: rgba($color: #000000, $alpha: 0); 47 | 48 | // 背景色 49 | $uni-bg-color: #f7f7f7; 50 | 51 | /* 水平间距 */ 52 | $uni-spacing-sm: 8px; 53 | $uni-spacing-base: 15px; 54 | $uni-spacing-lg: 30px; 55 | 56 | // 阴影 57 | $uni-shadow-sm:0 0 5px rgba($color: #d8d8d8, $alpha: 0.5); 58 | $uni-shadow-base:0 1px 8px 1px rgba($color: #a5a5a5, $alpha: 0.2); 59 | $uni-shadow-lg:0px 1px 10px 2px rgba($color: #a5a4a4, $alpha: 0.5); 60 | 61 | // 蒙版 62 | $uni-mask: rgba($color: #000000, $alpha: 0.4); 63 | -------------------------------------------------------------------------------- /uni_modules/uni-transition/changelog.md: -------------------------------------------------------------------------------- 1 | ## 1.3.1(2021-11-23) 2 | - 修复 init 方法初始化问题 3 | ## 1.3.0(2021-11-19) 4 | - 优化 组件UI,并提供设计资源,详见:[https://uniapp.dcloud.io/component/uniui/resource](https://uniapp.dcloud.io/component/uniui/resource) 5 | - 文档迁移,详见:[https://uniapp.dcloud.io/component/uniui/uni-transition](https://uniapp.dcloud.io/component/uniui/uni-transition) 6 | ## 1.2.1(2021-09-27) 7 | - 修复 init 方法不生效的 Bug 8 | ## 1.2.0(2021-07-30) 9 | - 组件兼容 vue3,如何创建 vue3 项目,详见 [uni-app 项目支持 vue3 介绍](https://ask.dcloud.net.cn/article/37834) 10 | ## 1.1.1(2021-05-12) 11 | - 新增 示例地址 12 | - 修复 示例项目缺少组件的 Bug 13 | ## 1.1.0(2021-04-22) 14 | - 新增 通过方法自定义动画 15 | - 新增 custom-class 非 NVUE 平台支持自定义 class 定制样式 16 | - 优化 动画触发逻辑,使动画更流畅 17 | - 优化 支持单独的动画类型 18 | - 优化 文档示例 19 | ## 1.0.2(2021-02-05) 20 | - 调整为 uni_modules 目录规范 21 | -------------------------------------------------------------------------------- /uni_modules/uni-transition/components/uni-transition/createAnimation.js: -------------------------------------------------------------------------------- 1 | // const defaultOption = { 2 | // duration: 300, 3 | // timingFunction: 'linear', 4 | // delay: 0, 5 | // transformOrigin: '50% 50% 0' 6 | // } 7 | // #ifdef APP-NVUE 8 | const nvueAnimation = uni.requireNativePlugin('animation') 9 | // #endif 10 | class MPAnimation { 11 | constructor(options, _this) { 12 | this.options = options 13 | this.animation = uni.createAnimation(options) 14 | this.currentStepAnimates = {} 15 | this.next = 0 16 | this.$ = _this 17 | 18 | } 19 | 20 | _nvuePushAnimates(type, args) { 21 | let aniObj = this.currentStepAnimates[this.next] 22 | let styles = {} 23 | if (!aniObj) { 24 | styles = { 25 | styles: {}, 26 | config: {} 27 | } 28 | } else { 29 | styles = aniObj 30 | } 31 | if (animateTypes1.includes(type)) { 32 | if (!styles.styles.transform) { 33 | styles.styles.transform = '' 34 | } 35 | let unit = '' 36 | if(type === 'rotate'){ 37 | unit = 'deg' 38 | } 39 | styles.styles.transform += `${type}(${args+unit}) ` 40 | } else { 41 | styles.styles[type] = `${args}` 42 | } 43 | this.currentStepAnimates[this.next] = styles 44 | } 45 | _animateRun(styles = {}, config = {}) { 46 | let ref = this.$.$refs['ani'].ref 47 | if (!ref) return 48 | return new Promise((resolve, reject) => { 49 | nvueAnimation.transition(ref, { 50 | styles, 51 | ...config 52 | }, res => { 53 | resolve() 54 | }) 55 | }) 56 | } 57 | 58 | _nvueNextAnimate(animates, step = 0, fn) { 59 | let obj = animates[step] 60 | if (obj) { 61 | let { 62 | styles, 63 | config 64 | } = obj 65 | this._animateRun(styles, config).then(() => { 66 | step += 1 67 | this._nvueNextAnimate(animates, step, fn) 68 | }) 69 | } else { 70 | this.currentStepAnimates = {} 71 | typeof fn === 'function' && fn() 72 | this.isEnd = true 73 | } 74 | } 75 | 76 | step(config = {}) { 77 | // #ifndef APP-NVUE 78 | this.animation.step(config) 79 | // #endif 80 | // #ifdef APP-NVUE 81 | this.currentStepAnimates[this.next].config = Object.assign({}, this.options, config) 82 | this.currentStepAnimates[this.next].styles.transformOrigin = this.currentStepAnimates[this.next].config.transformOrigin 83 | this.next++ 84 | // #endif 85 | return this 86 | } 87 | 88 | run(fn) { 89 | // #ifndef APP-NVUE 90 | this.$.animationData = this.animation.export() 91 | this.$.timer = setTimeout(() => { 92 | typeof fn === 'function' && fn() 93 | }, this.$.durationTime) 94 | // #endif 95 | // #ifdef APP-NVUE 96 | this.isEnd = false 97 | let ref = this.$.$refs['ani'] && this.$.$refs['ani'].ref 98 | if(!ref) return 99 | this._nvueNextAnimate(this.currentStepAnimates, 0, fn) 100 | this.next = 0 101 | // #endif 102 | } 103 | } 104 | 105 | 106 | const animateTypes1 = ['matrix', 'matrix3d', 'rotate', 'rotate3d', 'rotateX', 'rotateY', 'rotateZ', 'scale', 'scale3d', 107 | 'scaleX', 'scaleY', 'scaleZ', 'skew', 'skewX', 'skewY', 'translate', 'translate3d', 'translateX', 'translateY', 108 | 'translateZ' 109 | ] 110 | const animateTypes2 = ['opacity', 'backgroundColor'] 111 | const animateTypes3 = ['width', 'height', 'left', 'right', 'top', 'bottom'] 112 | animateTypes1.concat(animateTypes2, animateTypes3).forEach(type => { 113 | MPAnimation.prototype[type] = function(...args) { 114 | // #ifndef APP-NVUE 115 | this.animation[type](...args) 116 | // #endif 117 | // #ifdef APP-NVUE 118 | this._nvuePushAnimates(type, args) 119 | // #endif 120 | return this 121 | } 122 | }) 123 | 124 | export function createAnimation(option, _this) { 125 | if(!_this) return 126 | clearTimeout(_this.timer) 127 | return new MPAnimation(option, _this) 128 | } 129 | -------------------------------------------------------------------------------- /uni_modules/uni-transition/components/uni-transition/uni-transition.vue: -------------------------------------------------------------------------------- 1 | 4 | 5 | 276 | 277 | 278 | -------------------------------------------------------------------------------- /uni_modules/uni-transition/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "id": "uni-transition", 3 | "displayName": "uni-transition 过渡动画", 4 | "version": "1.3.1", 5 | "description": "元素的简单过渡动画", 6 | "keywords": [ 7 | "uni-ui", 8 | "uniui", 9 | "动画", 10 | "过渡", 11 | "过渡动画" 12 | ], 13 | "repository": "https://github.com/dcloudio/uni-ui", 14 | "engines": { 15 | "HBuilderX": "" 16 | }, 17 | "directories": { 18 | "example": "../../temps/example_temps" 19 | }, 20 | "dcloudext": { 21 | "category": [ 22 | "前端组件", 23 | "通用组件" 24 | ], 25 | "sale": { 26 | "regular": { 27 | "price": "0.00" 28 | }, 29 | "sourcecode": { 30 | "price": "0.00" 31 | } 32 | }, 33 | "contact": { 34 | "qq": "" 35 | }, 36 | "declaration": { 37 | "ads": "无", 38 | "data": "无", 39 | "permissions": "无" 40 | }, 41 | "npmurl": "https://www.npmjs.com/package/@dcloudio/uni-ui" 42 | }, 43 | "uni_modules": { 44 | "dependencies": ["uni-scss"], 45 | "encrypt": [], 46 | "platforms": { 47 | "cloud": { 48 | "tcb": "y", 49 | "aliyun": "y" 50 | }, 51 | "client": { 52 | "App": { 53 | "app-vue": "y", 54 | "app-nvue": "y" 55 | }, 56 | "H5-mobile": { 57 | "Safari": "y", 58 | "Android Browser": "y", 59 | "微信浏览器(Android)": "y", 60 | "QQ浏览器(Android)": "y" 61 | }, 62 | "H5-pc": { 63 | "Chrome": "y", 64 | "IE": "y", 65 | "Edge": "y", 66 | "Firefox": "y", 67 | "Safari": "y" 68 | }, 69 | "小程序": { 70 | "微信": "y", 71 | "阿里": "y", 72 | "百度": "y", 73 | "字节跳动": "y", 74 | "QQ": "y" 75 | }, 76 | "快应用": { 77 | "华为": "u", 78 | "联盟": "u" 79 | }, 80 | "Vue": { 81 | "vue2": "y", 82 | "vue3": "y" 83 | } 84 | } 85 | } 86 | } 87 | } -------------------------------------------------------------------------------- /uni_modules/uni-transition/readme.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | ## Transition 过渡动画 4 | > **组件名:uni-transition** 5 | > 代码块: `uTransition` 6 | 7 | 8 | 元素过渡动画 9 | 10 | ### [查看文档](https://uniapp.dcloud.io/component/uniui/uni-transition) 11 | #### 如使用过程中有任何问题,或者您对uni-ui有一些好的建议,欢迎加入 uni-ui 交流群:871950839 --------------------------------------------------------------------------------