diff --git a/apps/web-antd/.env.development b/apps/web-antd/.env.development index cff255764..fe07e867c 100644 --- a/apps/web-antd/.env.development +++ b/apps/web-antd/.env.development @@ -4,9 +4,9 @@ VITE_PORT=5666 VITE_BASE=/ # 请求路径 -VITE_BASE_URL=http://127.0.0.1:48080 +VITE_BASE_URL=http://47.103.66.220:48080 # 接口地址 -VITE_GLOB_API_URL=/admin-api +VITE_GLOB_API_URL=http://47.103.66.220:48080/admin-api # 文件上传类型:server - 后端上传, client - 前端直连上传,仅支持S3服务 VITE_UPLOAD_TYPE=server # 是否打开 devtools,true 为打开,false 为关闭 diff --git a/apps/web-antd/package.json b/apps/web-antd/package.json index dd8b2435c..5f315ad38 100644 --- a/apps/web-antd/package.json +++ b/apps/web-antd/package.json @@ -46,6 +46,7 @@ "@vueuse/core": "catalog:", "@vueuse/integrations": "catalog:", "ant-design-vue": "catalog:", + "benz-amr-recorder": "^1.1.5", "bpmn-js": "catalog:", "bpmn-js-properties-panel": "catalog:", "bpmn-js-token-simulation": "catalog:", diff --git a/apps/web-antd/src/utils/useUpload.ts b/apps/web-antd/src/utils/useUpload.ts new file mode 100644 index 000000000..4c87c04ec --- /dev/null +++ b/apps/web-antd/src/utils/useUpload.ts @@ -0,0 +1,63 @@ +import { message } from 'ant-design-vue'; + +enum UploadType { + Image = 'image', + Video = 'video', + Voice = 'voice', +} + +const useBeforeUpload = (type: UploadType, maxSizeMB: number) => { + const fn = (file: File): boolean => { + let allowTypes: string[] = []; + let name = ''; + + switch (type) { + case UploadType.Image: { + allowTypes = [ + 'image/jpeg', + 'image/png', + 'image/gif', + 'image/bmp', + 'image/jpg', + ]; + maxSizeMB = 2; + name = '图片'; + break; + } + case UploadType.Video: { + allowTypes = ['video/mp4']; + maxSizeMB = 10; + name = '视频'; + break; + } + case UploadType.Voice: { + allowTypes = [ + 'audio/mp3', + 'audio/mpeg', + 'audio/wma', + 'audio/wav', + 'audio/amr', + ]; + maxSizeMB = 2; + name = '语音'; + break; + } + } + // 格式不正确 + if (!allowTypes.includes(file.type)) { + message.error(`上传${name}格式不对!`); + return false; + } + // 大小不正确 + if (file.size / 1024 / 1024 > maxSizeMB) { + message.error(`上传${name}大小不能超过${maxSizeMB}M!`); + return false; + } + + return true; + }; + + return fn; +}; + +export { UploadType, useBeforeUpload }; diff --git a/apps/web-antd/src/views/mp/menu/assets/iphone_backImg.png b/apps/web-antd/src/views/mp/menu/assets/iphone_backImg.png new file mode 100644 index 000000000..bb09591a7 Binary files /dev/null and b/apps/web-antd/src/views/mp/menu/assets/iphone_backImg.png differ diff --git a/apps/web-antd/src/views/mp/menu/assets/menu_foot.png b/apps/web-antd/src/views/mp/menu/assets/menu_foot.png new file mode 100644 index 000000000..4a89d4bd2 Binary files /dev/null and b/apps/web-antd/src/views/mp/menu/assets/menu_foot.png differ diff --git a/apps/web-antd/src/views/mp/menu/assets/menu_head.png b/apps/web-antd/src/views/mp/menu/assets/menu_head.png new file mode 100644 index 000000000..248cfb761 Binary files /dev/null and b/apps/web-antd/src/views/mp/menu/assets/menu_head.png differ diff --git a/apps/web-antd/src/views/mp/menu/data.ts b/apps/web-antd/src/views/mp/menu/data.ts new file mode 100644 index 000000000..2a22837ba --- /dev/null +++ b/apps/web-antd/src/views/mp/menu/data.ts @@ -0,0 +1,9 @@ +/** 菜单未选中标识 */ +export const MENU_NOT_SELECTED = '__MENU_NOT_SELECTED__'; + +/** 菜单级别枚举 */ +export enum Level { + Child = '2', + Parent = '1', + Undefined = '0', +} diff --git a/apps/web-antd/src/views/mp/menu/index.vue b/apps/web-antd/src/views/mp/menu/index.vue index 8d4042f12..e8ba1a21f 100644 --- a/apps/web-antd/src/views/mp/menu/index.vue +++ b/apps/web-antd/src/views/mp/menu/index.vue @@ -1,29 +1,407 @@ + + diff --git a/apps/web-antd/src/views/mp/menu/modules/menu-editor.vue b/apps/web-antd/src/views/mp/menu/modules/menu-editor.vue new file mode 100644 index 000000000..1efb9ab0c --- /dev/null +++ b/apps/web-antd/src/views/mp/menu/modules/menu-editor.vue @@ -0,0 +1,286 @@ + + + + + diff --git a/apps/web-antd/src/views/mp/menu/modules/menu-previewer.vue b/apps/web-antd/src/views/mp/menu/modules/menu-previewer.vue new file mode 100644 index 000000000..ab1a37978 --- /dev/null +++ b/apps/web-antd/src/views/mp/menu/modules/menu-previewer.vue @@ -0,0 +1,252 @@ + + + + + diff --git a/apps/web-antd/src/views/mp/menu/modules/menuOptions.ts b/apps/web-antd/src/views/mp/menu/modules/menuOptions.ts new file mode 100644 index 000000000..9ba818fc4 --- /dev/null +++ b/apps/web-antd/src/views/mp/menu/modules/menuOptions.ts @@ -0,0 +1,42 @@ +export default [ + { + value: 'view', + label: '跳转网页', + }, + { + value: 'miniprogram', + label: '跳转小程序', + }, + { + value: 'click', + label: '点击回复', + }, + { + value: 'article_view_limited', + label: '跳转图文消息', + }, + { + value: 'scancode_push', + label: '扫码直接返回结果', + }, + { + value: 'scancode_waitmsg', + label: '扫码回复', + }, + { + value: 'pic_sysphoto', + label: '系统拍照发图', + }, + { + value: 'pic_photo_or_album', + label: '拍照或者相册', + }, + { + value: 'pic_weixin', + label: '微信相册', + }, + { + value: 'location_select', + label: '选择地理位置', + }, +]; diff --git a/apps/web-antd/src/views/mp/menu/modules/types.ts b/apps/web-antd/src/views/mp/menu/modules/types.ts new file mode 100644 index 000000000..928534ea9 --- /dev/null +++ b/apps/web-antd/src/views/mp/menu/modules/types.ts @@ -0,0 +1,73 @@ +export interface Replay { + title: string; + description: string; + picUrl: string; + url: string; +} + +export type MenuType = + | '' + | 'article_view_limited' + | 'click' + | 'location_select' + | 'pic_photo_or_album' + | 'pic_sysphoto' + | 'pic_weixin' + | 'scancode_push' + | 'scancode_waitmsg' + | 'view'; + +interface _RawMenu { + // db + id: number; + parentId: number; + accountId: number; + appId: string; + createTime: number; + + // mp-native + name: string; + menuKey: string; + type: MenuType; + url: string; + miniProgramAppId: string; + miniProgramPagePath: string; + articleId: string; + replyMessageType: string; + replyContent: string; + replyMediaId: string; + replyMediaUrl: string; + replyThumbMediaId: string; + replyThumbMediaUrl: string; + replyTitle: string; + replyDescription: string; + replyArticles: Replay; + replyMusicUrl: string; + replyHqMusicUrl: string; +} + +export type RawMenu = Partial<_RawMenu>; + +interface _Reply { + type: string; + accountId: number; + content: string; + mediaId: string; + url: string; + thumbMediaId: string; + thumbMediaUrl: string; + title: string; + description: string; + articles: null | Replay[]; + musicUrl: string; + hqMusicUrl: string; +} + +export type Reply = Partial<_Reply>; + +interface _Menu extends RawMenu { + children: _Menu[]; + reply: Reply; +} + +export type Menu = Partial<_Menu>; diff --git a/apps/web-antd/src/views/mp/modules/wx-account-select/index.ts b/apps/web-antd/src/views/mp/modules/wx-account-select/index.ts new file mode 100644 index 000000000..374d993fe --- /dev/null +++ b/apps/web-antd/src/views/mp/modules/wx-account-select/index.ts @@ -0,0 +1 @@ +export { default } from './main.vue'; diff --git a/apps/web-antd/src/views/mp/modules/wx-account-select/main.vue b/apps/web-antd/src/views/mp/modules/wx-account-select/main.vue new file mode 100644 index 000000000..75272e669 --- /dev/null +++ b/apps/web-antd/src/views/mp/modules/wx-account-select/main.vue @@ -0,0 +1,91 @@ + + + + diff --git a/apps/web-antd/src/views/mp/modules/wx-location/index.ts b/apps/web-antd/src/views/mp/modules/wx-location/index.ts new file mode 100644 index 000000000..374d993fe --- /dev/null +++ b/apps/web-antd/src/views/mp/modules/wx-location/index.ts @@ -0,0 +1 @@ +export { default } from './main.vue'; diff --git a/apps/web-antd/src/views/mp/modules/wx-location/main.vue b/apps/web-antd/src/views/mp/modules/wx-location/main.vue new file mode 100644 index 000000000..8df54d252 --- /dev/null +++ b/apps/web-antd/src/views/mp/modules/wx-location/main.vue @@ -0,0 +1,62 @@ + + + + diff --git a/apps/web-antd/src/views/mp/modules/wx-material-select/index.ts b/apps/web-antd/src/views/mp/modules/wx-material-select/index.ts new file mode 100644 index 000000000..f4fcea0ba --- /dev/null +++ b/apps/web-antd/src/views/mp/modules/wx-material-select/index.ts @@ -0,0 +1,3 @@ +export { default } from './main.vue'; + +export { MaterialType, NewsType } from './types'; diff --git a/apps/web-antd/src/views/mp/modules/wx-material-select/main.vue b/apps/web-antd/src/views/mp/modules/wx-material-select/main.vue new file mode 100644 index 000000000..40784133b --- /dev/null +++ b/apps/web-antd/src/views/mp/modules/wx-material-select/main.vue @@ -0,0 +1,283 @@ + + + + diff --git a/apps/web-antd/src/views/mp/modules/wx-material-select/types.ts b/apps/web-antd/src/views/mp/modules/wx-material-select/types.ts new file mode 100644 index 000000000..3d44c5db7 --- /dev/null +++ b/apps/web-antd/src/views/mp/modules/wx-material-select/types.ts @@ -0,0 +1,11 @@ +export enum NewsType { + Draft = '2', + Published = '1', +} + +export enum MaterialType { + Image = 'image', + News = 'news', + Video = 'video', + Voice = 'voice', +} diff --git a/apps/web-antd/src/views/mp/modules/wx-msg/card.scss b/apps/web-antd/src/views/mp/modules/wx-msg/card.scss new file mode 100644 index 000000000..58fde79fd --- /dev/null +++ b/apps/web-antd/src/views/mp/modules/wx-msg/card.scss @@ -0,0 +1,116 @@ +.avue-card { + &__item { + box-sizing: border-box; + height: 200px; + margin-bottom: 16px; + font-size: 14px; + font-feature-settings: 'tnum'; + font-variant: tabular-nums; + line-height: 1.5; + color: rgb(0 0 0 / 65%); + cursor: pointer; + list-style: none; + background-color: #fff; + border: 1px solid #e8e8e8; + + &:hover { + border-color: rgb(0 0 0 / 9%); + box-shadow: 0 2px 8px rgb(0 0 0 / 9%); + } + + &--add { + display: flex; + align-items: center; + justify-content: center; + width: 100%; + font-size: 16px; + color: rgb(0 0 0 / 45%); + background-color: #fff; + border: 1px dashed #000; + border-color: #d9d9d9; + border-radius: 2px; + + i { + margin-right: 10px; + } + + &:hover { + color: #40a9ff; + background-color: #fff; + border-color: #40a9ff; + } + } + } + + &__body { + display: flex; + padding: 24px; + } + + &__detail { + flex: 1; + } + + &__avatar { + width: 48px; + height: 48px; + margin-right: 12px; + overflow: hidden; + border-radius: 48px; + + img { + width: 100%; + height: 100%; + } + } + + &__title { + margin-bottom: 12px; + font-size: 16px; + color: rgb(0 0 0 / 85%); + + &:hover { + color: #1890ff; + } + } + + &__info { + display: -webkit-box; + height: 64px; + overflow: hidden; + -webkit-line-clamp: 3; + color: rgb(0 0 0 / 45%); + -webkit-box-orient: vertical; + } + + &__menu { + display: flex; + justify-content: space-around; + height: 50px; + line-height: 50px; + color: rgb(0 0 0 / 45%); + text-align: center; + background: #f7f9fa; + + &:hover { + color: #1890ff; + } + } +} + +/** joolun 额外加的 */ +.avue-comment__main { + flex: unset !important; + margin: 0 8px !important; + border-radius: 5px !important; +} + +.avue-comment__header { + border-top-left-radius: 5px; + border-top-right-radius: 5px; +} + +.avue-comment__body { + border-bottom-right-radius: 5px; + border-bottom-left-radius: 5px; +} diff --git a/apps/web-antd/src/views/mp/modules/wx-msg/comment.scss b/apps/web-antd/src/views/mp/modules/wx-msg/comment.scss new file mode 100644 index 000000000..219e2e5d4 --- /dev/null +++ b/apps/web-antd/src/views/mp/modules/wx-msg/comment.scss @@ -0,0 +1,109 @@ +/* 来自 https://github.com/nmxiaowei/avue/blob/master/styles/src/element-ui/comment.scss */ +.avue-comment { + display: flex; + align-items: flex-start; + margin-bottom: 30px; + + &--reverse { + flex-direction: row-reverse; + + .avue-comment__main { + &::before, + &::after { + right: -8px; + left: auto; + border-width: 8px 0 8px 8px; + } + + &::before { + border-left-color: #dedede; + } + + &::after { + margin-right: 1px; + margin-left: auto; + border-left-color: #f8f8f8; + } + } + } + + &__avatar { + box-sizing: border-box; + width: 48px; + height: 48px; + vertical-align: middle; + border: 1px solid transparent; + border-radius: 50%; + } + + &__header { + display: flex; + align-items: center; + justify-content: space-between; + padding: 5px 15px; + background: #f8f8f8; + border-bottom: 1px solid #eee; + } + + &__author { + font-size: 14px; + font-weight: 700; + color: #999; + } + + &__main { + position: relative; + flex: 1; + margin: 0 20px; + border: 1px solid #dedede; + border-radius: 2px; + + &::before, + &::after { + position: absolute; + top: 10px; + right: 100%; + left: -8px; + display: block; + width: 0; + height: 0; + pointer-events: none; + content: ' '; + border-color: transparent; + border-style: solid solid outset; + border-width: 8px 8px 8px 0; + } + + &::before { + z-index: 1; + border-right-color: #dedede; + } + + &::after { + z-index: 2; + margin-left: 1px; + border-right-color: #f8f8f8; + } + } + + &__body { + padding: 15px; + overflow: hidden; + font-family: + 'Segoe UI', 'Lucida Grande', Helvetica, Arial, 'Microsoft YaHei', + FreeSans, Arimo, 'Droid Sans', 'wenquanyi micro hei', 'Hiragino Sans GB', + 'Hiragino Sans GB W3', FontAwesome, sans-serif; + font-size: 14px; + color: #333; + background: #fff; + } + + blockquote { + padding: 1px 0 1px 15px; + margin: 0; + font-family: + Georgia, 'Times New Roman', Times, Kai, 'Kaiti SC', KaiTi, BiauKai, + FontAwesome, serif; + border-left: 4px solid #ddd; + } +} diff --git a/apps/web-antd/src/views/mp/modules/wx-msg/components/Msg.vue b/apps/web-antd/src/views/mp/modules/wx-msg/components/Msg.vue new file mode 100644 index 000000000..e00edf7d6 --- /dev/null +++ b/apps/web-antd/src/views/mp/modules/wx-msg/components/Msg.vue @@ -0,0 +1,80 @@ + + + + + diff --git a/apps/web-antd/src/views/mp/modules/wx-msg/components/MsgEvent.vue b/apps/web-antd/src/views/mp/modules/wx-msg/components/MsgEvent.vue new file mode 100644 index 000000000..2b329eb7a --- /dev/null +++ b/apps/web-antd/src/views/mp/modules/wx-msg/components/MsgEvent.vue @@ -0,0 +1,56 @@ + + + diff --git a/apps/web-antd/src/views/mp/modules/wx-msg/components/MsgList.vue b/apps/web-antd/src/views/mp/modules/wx-msg/components/MsgList.vue new file mode 100644 index 000000000..36b574d83 --- /dev/null +++ b/apps/web-antd/src/views/mp/modules/wx-msg/components/MsgList.vue @@ -0,0 +1,77 @@ + + + + diff --git a/apps/web-antd/src/views/mp/modules/wx-msg/index.ts b/apps/web-antd/src/views/mp/modules/wx-msg/index.ts new file mode 100644 index 000000000..048afc95f --- /dev/null +++ b/apps/web-antd/src/views/mp/modules/wx-msg/index.ts @@ -0,0 +1,3 @@ +export { default } from './main.vue'; + +export { MsgType } from './types'; diff --git a/apps/web-antd/src/views/mp/modules/wx-msg/main.vue b/apps/web-antd/src/views/mp/modules/wx-msg/main.vue new file mode 100644 index 000000000..6855923e2 --- /dev/null +++ b/apps/web-antd/src/views/mp/modules/wx-msg/main.vue @@ -0,0 +1,226 @@ + + + + + + diff --git a/apps/web-antd/src/views/mp/modules/wx-msg/types.ts b/apps/web-antd/src/views/mp/modules/wx-msg/types.ts new file mode 100644 index 000000000..e988954ad --- /dev/null +++ b/apps/web-antd/src/views/mp/modules/wx-msg/types.ts @@ -0,0 +1,17 @@ +export enum MsgType { + Event = 'event', + Image = 'image', + Link = 'link', + Location = 'location', + Music = 'music', + News = 'news', + Text = 'text', + Video = 'video', + Voice = 'voice', +} + +export interface User { + nickname: string; + avatar: string; + accountId: number; +} diff --git a/apps/web-antd/src/views/mp/modules/wx-music/index.ts b/apps/web-antd/src/views/mp/modules/wx-music/index.ts new file mode 100644 index 000000000..374d993fe --- /dev/null +++ b/apps/web-antd/src/views/mp/modules/wx-music/index.ts @@ -0,0 +1 @@ +export { default } from './main.vue'; diff --git a/apps/web-antd/src/views/mp/modules/wx-music/main.vue b/apps/web-antd/src/views/mp/modules/wx-music/main.vue new file mode 100644 index 000000000..0f3b1c7c3 --- /dev/null +++ b/apps/web-antd/src/views/mp/modules/wx-music/main.vue @@ -0,0 +1,69 @@ + + + + + + diff --git a/apps/web-antd/src/views/mp/modules/wx-news/index.ts b/apps/web-antd/src/views/mp/modules/wx-news/index.ts new file mode 100644 index 000000000..374d993fe --- /dev/null +++ b/apps/web-antd/src/views/mp/modules/wx-news/index.ts @@ -0,0 +1 @@ +export { default } from './main.vue'; diff --git a/apps/web-antd/src/views/mp/modules/wx-news/main.vue b/apps/web-antd/src/views/mp/modules/wx-news/main.vue new file mode 100644 index 000000000..f8afc52d6 --- /dev/null +++ b/apps/web-antd/src/views/mp/modules/wx-news/main.vue @@ -0,0 +1,126 @@ + + + + + + diff --git a/apps/web-antd/src/views/mp/modules/wx-reply/components/TabImage.vue b/apps/web-antd/src/views/mp/modules/wx-reply/components/TabImage.vue new file mode 100644 index 000000000..5833bd805 --- /dev/null +++ b/apps/web-antd/src/views/mp/modules/wx-reply/components/TabImage.vue @@ -0,0 +1,193 @@ + + + + + diff --git a/apps/web-antd/src/views/mp/modules/wx-reply/components/TabMusic.vue b/apps/web-antd/src/views/mp/modules/wx-reply/components/TabMusic.vue new file mode 100644 index 000000000..0254716f4 --- /dev/null +++ b/apps/web-antd/src/views/mp/modules/wx-reply/components/TabMusic.vue @@ -0,0 +1,162 @@ + + + diff --git a/apps/web-antd/src/views/mp/modules/wx-reply/components/TabNews.vue b/apps/web-antd/src/views/mp/modules/wx-reply/components/TabNews.vue new file mode 100644 index 000000000..4201f3c7e --- /dev/null +++ b/apps/web-antd/src/views/mp/modules/wx-reply/components/TabNews.vue @@ -0,0 +1,99 @@ + + + + + diff --git a/apps/web-antd/src/views/mp/modules/wx-reply/components/TabText.vue b/apps/web-antd/src/views/mp/modules/wx-reply/components/TabText.vue new file mode 100644 index 000000000..c6d937873 --- /dev/null +++ b/apps/web-antd/src/views/mp/modules/wx-reply/components/TabText.vue @@ -0,0 +1,30 @@ + + + diff --git a/apps/web-antd/src/views/mp/modules/wx-reply/components/TabVideo.vue b/apps/web-antd/src/views/mp/modules/wx-reply/components/TabVideo.vue new file mode 100644 index 000000000..a0bc1b5b1 --- /dev/null +++ b/apps/web-antd/src/views/mp/modules/wx-reply/components/TabVideo.vue @@ -0,0 +1,164 @@ + + + + + diff --git a/apps/web-antd/src/views/mp/modules/wx-reply/components/TabVoice.vue b/apps/web-antd/src/views/mp/modules/wx-reply/components/TabVoice.vue new file mode 100644 index 000000000..5290e88ec --- /dev/null +++ b/apps/web-antd/src/views/mp/modules/wx-reply/components/TabVoice.vue @@ -0,0 +1,184 @@ + + + + diff --git a/apps/web-antd/src/views/mp/modules/wx-reply/components/types.ts b/apps/web-antd/src/views/mp/modules/wx-reply/components/types.ts new file mode 100644 index 000000000..67571ef59 --- /dev/null +++ b/apps/web-antd/src/views/mp/modules/wx-reply/components/types.ts @@ -0,0 +1,58 @@ +import type { Ref } from 'vue'; + +import { unref } from 'vue'; + +enum ReplyType { + Image = 'image', + Music = 'music', + News = 'news', + Text = 'text', + Video = 'video', + Voice = 'voice', +} + +interface _Reply { + accountId: number; + type: ReplyType; + name?: null | string; + content?: null | string; + mediaId?: null | string; + url?: null | string; + title?: null | string; + description?: null | string; + thumbMediaId?: null | string; + thumbMediaUrl?: null | string; + musicUrl?: null | string; + hqMusicUrl?: null | string; + introduction?: null | string; + articles?: any[]; +} + +type Reply = _Reply; // Partial<_Reply> + +enum NewsType { + Draft = '2', + Published = '1', +} + +/** 利用旧的reply[accountId, type]初始化新的Reply */ +const createEmptyReply = (old: Ref | Reply): Reply => { + return { + accountId: unref(old).accountId, + type: unref(old).type, + name: null, + content: null, + mediaId: null, + url: null, + title: null, + description: null, + thumbMediaId: null, + thumbMediaUrl: null, + musicUrl: null, + hqMusicUrl: null, + introduction: null, + articles: [], + }; +}; + +export { createEmptyReply, NewsType, type Reply, ReplyType }; diff --git a/apps/web-antd/src/views/mp/modules/wx-reply/index.ts b/apps/web-antd/src/views/mp/modules/wx-reply/index.ts new file mode 100644 index 000000000..a3f675bb1 --- /dev/null +++ b/apps/web-antd/src/views/mp/modules/wx-reply/index.ts @@ -0,0 +1,8 @@ +export { + createEmptyReply, + NewsType, + type Reply, + ReplyType, +} from './components/types'; + +export { default } from './main.vue'; diff --git a/apps/web-antd/src/views/mp/modules/wx-reply/main.vue b/apps/web-antd/src/views/mp/modules/wx-reply/main.vue new file mode 100644 index 000000000..1a439cd47 --- /dev/null +++ b/apps/web-antd/src/views/mp/modules/wx-reply/main.vue @@ -0,0 +1,219 @@ + + + + + + diff --git a/apps/web-antd/src/views/mp/modules/wx-video-play/index.ts b/apps/web-antd/src/views/mp/modules/wx-video-play/index.ts new file mode 100644 index 000000000..374d993fe --- /dev/null +++ b/apps/web-antd/src/views/mp/modules/wx-video-play/index.ts @@ -0,0 +1 @@ +export { default } from './main.vue'; diff --git a/apps/web-antd/src/views/mp/modules/wx-video-play/main.vue b/apps/web-antd/src/views/mp/modules/wx-video-play/main.vue new file mode 100644 index 000000000..4e812b5c8 --- /dev/null +++ b/apps/web-antd/src/views/mp/modules/wx-video-play/main.vue @@ -0,0 +1,78 @@ + + + + diff --git a/apps/web-antd/src/views/mp/modules/wx-voice-play/index.ts b/apps/web-antd/src/views/mp/modules/wx-voice-play/index.ts new file mode 100644 index 000000000..374d993fe --- /dev/null +++ b/apps/web-antd/src/views/mp/modules/wx-voice-play/index.ts @@ -0,0 +1 @@ +export { default } from './main.vue'; diff --git a/apps/web-antd/src/views/mp/modules/wx-voice-play/main.vue b/apps/web-antd/src/views/mp/modules/wx-voice-play/main.vue new file mode 100644 index 000000000..d8d4f5d85 --- /dev/null +++ b/apps/web-antd/src/views/mp/modules/wx-voice-play/main.vue @@ -0,0 +1,107 @@ + + + + + diff --git a/apps/web-ele/src/views/mp/hooks/useUpload.ts b/apps/web-ele/src/utils/useUpload.ts similarity index 100% rename from apps/web-ele/src/views/mp/hooks/useUpload.ts rename to apps/web-ele/src/utils/useUpload.ts diff --git a/apps/web-ele/src/views/mall/promotion/components/color-input/index.vue b/apps/web-ele/src/views/mall/promotion/components/color-input/index.vue index 996863b5b..f80b9fcb5 100644 --- a/apps/web-ele/src/views/mall/promotion/components/color-input/index.vue +++ b/apps/web-ele/src/views/mall/promotion/components/color-input/index.vue @@ -1,10 +1,10 @@