Przeglądaj źródła

📦 代码分包拆分大小优化

快乐的梦鱼 3 tygodni temu
rodzic
commit
5751710ad9
37 zmienionych plików z 97 dodań i 45 usunięć
  1. 2 2
      src/common/components/form/RichTextEditor.vue
  2. 6 32
      src/pages.json
  3. 1 1
      src/pages/chat/components/ChatMessage.vue
  4. 0 0
      src/pages/chat/components/zero-markdown-view/changelog.md
  5. 0 0
      src/pages/chat/components/zero-markdown-view/components/mp-html/highlight/config.js
  6. 0 0
      src/pages/chat/components/zero-markdown-view/components/mp-html/highlight/index.js
  7. 0 0
      src/pages/chat/components/zero-markdown-view/components/mp-html/highlight/prism.min.js
  8. 0 0
      src/pages/chat/components/zero-markdown-view/components/mp-html/latex/index.js
  9. 0 0
      src/pages/chat/components/zero-markdown-view/components/mp-html/latex/katex.min.js
  10. 0 0
      src/pages/chat/components/zero-markdown-view/components/mp-html/markdown/index.js
  11. 0 0
      src/pages/chat/components/zero-markdown-view/components/mp-html/markdown/marked.min.js
  12. 0 0
      src/pages/chat/components/zero-markdown-view/components/mp-html/mp-html.vue
  13. 0 0
      src/pages/chat/components/zero-markdown-view/components/mp-html/node/node.vue
  14. 0 0
      src/pages/chat/components/zero-markdown-view/components/mp-html/parser.js
  15. 0 0
      src/pages/chat/components/zero-markdown-view/components/mp-html/style/index.js
  16. 0 0
      src/pages/chat/components/zero-markdown-view/components/mp-html/style/parser.js
  17. 0 0
      src/pages/chat/components/zero-markdown-view/components/zero-markdown-view/zero-markdown-view.vue
  18. 0 0
      src/pages/chat/components/zero-markdown-view/package.json
  19. 0 0
      src/pages/chat/components/zero-markdown-view/readme.md
  20. 0 0
      src/pages/dig/components/sp-editor/changelog.md
  21. 0 0
      src/pages/dig/components/sp-editor/components/sp-editor/color-picker.vue
  22. 0 0
      src/pages/dig/components/sp-editor/components/sp-editor/fab-tool.vue
  23. 0 0
      src/pages/dig/components/sp-editor/components/sp-editor/link-edit.vue
  24. 2 2
      src/uni_modules/sp-editor/components/sp-editor/sp-editor.vue
  25. 0 0
      src/pages/dig/components/sp-editor/icons/custom-icon.css
  26. 0 0
      src/pages/dig/components/sp-editor/icons/editor-icon.css
  27. 0 0
      src/pages/dig/components/sp-editor/package.json
  28. 0 0
      src/pages/dig/components/sp-editor/readme.md
  29. 0 0
      src/pages/dig/components/sp-editor/static/image-resize.min.js
  30. 0 0
      src/pages/dig/components/sp-editor/static/quill.min.js
  31. 0 0
      src/pages/dig/components/sp-editor/utils/index.js
  32. 1 1
      src/pages/editor/editor.vue
  33. 0 0
      src/pages/dig/editor/preview.vue
  34. 10 5
      src/pages/home/index.vue
  35. 73 0
      src/pages/home/village/dialogs/PostIndex.vue
  36. 0 0
      src/pages/home/village/post/entry.vue
  37. 2 2
      src/pages/index.vue

+ 2 - 2
src/common/components/form/RichTextEditor.vue

@@ -64,7 +64,7 @@ function preview() {
   uni.setStorage({
     key: 'editorContent',
     data: props.modelValue,
-    success: () => navTo('/pages/editor/preview'),
+    success: () => navTo('/pages/dig/editor/preview'),
   })
 }
 function edit() {
@@ -76,7 +76,7 @@ function edit() {
   uni.setStorage({
     key: 'editorContent',
     data: props.modelValue,
-    success: () => navTo('/pages/editor/editor'),
+    success: () => navTo('/pages/dig/editor/editor'),
   })
 }
 

+ 6 - 32
src/pages.json

@@ -291,29 +291,22 @@
   ],
   "subPackages": [
     {
-      "root": "pages/chat",
+      "root": "pages/dig",
       "pages": [
         {
-          "path": "index",
+          "path": "editor/editor",
           "style": {
-            "navigationBarTitleText": "AI助手",
-            "navigationStyle": "custom",
+            "navigationBarTitleText": "编辑文章",
             "enablePullDownRefresh": false
           }
         },
         {
-          "path": "dependent/post/publish",
+          "path": "editor/preview",
           "style": {
-            "navigationBarTitleText": "发表贴图",
-            "navigationStyle": "custom",
+            "navigationBarTitleText": "预览文章",
             "enablePullDownRefresh": false
           }
-        }
-      ]
-    },
-    {
-      "root": "pages/dig",
-      "pages": [
+        },
         {
           "path": "details",
           "style": {
@@ -413,25 +406,6 @@
       ]
     },
     {
-      "root": "pages/editor",
-      "pages": [
-        {
-          "path": "editor",
-          "style": {
-            "navigationBarTitleText": "编辑文章",
-            "enablePullDownRefresh": false
-          }
-        },
-        {
-          "path": "preview",
-          "style": {
-            "navigationBarTitleText": "预览文章",
-            "enablePullDownRefresh": false
-          }
-        }
-      ]
-    },
-    {
       "root": "pages/home/village/games",
       "pages": [
         {

+ 1 - 1
src/pages/chat/components/ChatMessage.vue

@@ -130,7 +130,7 @@ import Button from '@/components/basic/Button.vue';
 import FlexRow from '@/components/layout/FlexRow.vue';
 import FlexCol from '@/components/layout/FlexCol.vue';
 import { actionSheet } from '@/components/dialog/CommonRoot';
-import ZeroMarkdownView from '@/pages/chat/zero-markdown-view/components/zero-markdown-view/zero-markdown-view.vue';
+import ZeroMarkdownView from './zero-markdown-view/components/zero-markdown-view/zero-markdown-view.vue';
 import IconButton from '@/components/basic/IconButton.vue';
 
 const props = defineProps({

src/pages/chat/zero-markdown-view/changelog.md → src/pages/chat/components/zero-markdown-view/changelog.md


src/pages/chat/zero-markdown-view/components/mp-html/highlight/config.js → src/pages/chat/components/zero-markdown-view/components/mp-html/highlight/config.js


src/pages/chat/zero-markdown-view/components/mp-html/highlight/index.js → src/pages/chat/components/zero-markdown-view/components/mp-html/highlight/index.js


src/pages/chat/zero-markdown-view/components/mp-html/highlight/prism.min.js → src/pages/chat/components/zero-markdown-view/components/mp-html/highlight/prism.min.js


src/pages/chat/zero-markdown-view/components/mp-html/latex/index.js → src/pages/chat/components/zero-markdown-view/components/mp-html/latex/index.js


src/pages/chat/zero-markdown-view/components/mp-html/latex/katex.min.js → src/pages/chat/components/zero-markdown-view/components/mp-html/latex/katex.min.js


src/pages/chat/zero-markdown-view/components/mp-html/markdown/index.js → src/pages/chat/components/zero-markdown-view/components/mp-html/markdown/index.js


src/pages/chat/zero-markdown-view/components/mp-html/markdown/marked.min.js → src/pages/chat/components/zero-markdown-view/components/mp-html/markdown/marked.min.js


src/pages/chat/zero-markdown-view/components/mp-html/mp-html.vue → src/pages/chat/components/zero-markdown-view/components/mp-html/mp-html.vue


src/pages/chat/zero-markdown-view/components/mp-html/node/node.vue → src/pages/chat/components/zero-markdown-view/components/mp-html/node/node.vue


src/pages/chat/zero-markdown-view/components/mp-html/parser.js → src/pages/chat/components/zero-markdown-view/components/mp-html/parser.js


src/pages/chat/zero-markdown-view/components/mp-html/style/index.js → src/pages/chat/components/zero-markdown-view/components/mp-html/style/index.js


src/pages/chat/zero-markdown-view/components/mp-html/style/parser.js → src/pages/chat/components/zero-markdown-view/components/mp-html/style/parser.js


src/pages/chat/zero-markdown-view/components/zero-markdown-view/zero-markdown-view.vue → src/pages/chat/components/zero-markdown-view/components/zero-markdown-view/zero-markdown-view.vue


src/pages/chat/zero-markdown-view/package.json → src/pages/chat/components/zero-markdown-view/package.json


src/pages/chat/zero-markdown-view/readme.md → src/pages/chat/components/zero-markdown-view/readme.md


src/uni_modules/sp-editor/changelog.md → src/pages/dig/components/sp-editor/changelog.md


src/uni_modules/sp-editor/components/sp-editor/color-picker.vue → src/pages/dig/components/sp-editor/components/sp-editor/color-picker.vue


src/uni_modules/sp-editor/components/sp-editor/fab-tool.vue → src/pages/dig/components/sp-editor/components/sp-editor/fab-tool.vue



+ 2 - 2
src/uni_modules/sp-editor/components/sp-editor/sp-editor.vue

@@ -774,8 +774,8 @@ export default {
 </script>
 
 <style lang="scss">
-@import '@/uni_modules/sp-editor/icons/editor-icon.css';
-@import '@/uni_modules/sp-editor/icons/custom-icon.css';
+@import '../../icons/editor-icon.css';
+@import '../../icons/custom-icon.css';
 
 .sp-editor {
 	height: 100%;

src/uni_modules/sp-editor/icons/custom-icon.css → src/pages/dig/components/sp-editor/icons/custom-icon.css


src/uni_modules/sp-editor/icons/editor-icon.css → src/pages/dig/components/sp-editor/icons/editor-icon.css


src/uni_modules/sp-editor/package.json → src/pages/dig/components/sp-editor/package.json


src/uni_modules/sp-editor/readme.md → src/pages/dig/components/sp-editor/readme.md


src/uni_modules/sp-editor/static/image-resize.min.js → src/pages/dig/components/sp-editor/static/image-resize.min.js


src/uni_modules/sp-editor/static/quill.min.js → src/pages/dig/components/sp-editor/static/quill.min.js


src/uni_modules/sp-editor/utils/index.js → src/pages/dig/components/sp-editor/utils/index.js


+ 1 - 1
src/pages/editor/editor.vue

@@ -25,7 +25,7 @@ import { ref } from 'vue';
 import { confirm } from '@/components/utils/DialogAction';
 import { back, backAndCallOnPageBack } from '@/components/utils/PageAction';
 import { showError } from '@/common/composeabe/ErrorDisplay';
-import spEditor from '@/uni_modules/sp-editor/components/sp-editor/sp-editor.vue';
+import spEditor from '../components/sp-editor/components/sp-editor/sp-editor.vue';
 import XBarSpace from '@/components/layout/space/XBarSpace.vue';
 import Button from '@/components/basic/Button.vue';
 import CommonContent from '@/api/CommonContent';

src/pages/editor/preview.vue → src/pages/dig/editor/preview.vue


+ 10 - 5
src/pages/home/index.vue

@@ -159,7 +159,7 @@
             @click="handleGoPublish()"
           >
             <Icon name="https://xy.wenlvti.net/app_static/images/village/IconLargeHistory.png" :size="30" />
-            <Text text="AI帮你写" fontConfig="contentText" />
+            <Text text="我也来写" fontConfig="contentText" />
           </Touchable>
         </template>
       </HomeTitle>
@@ -207,6 +207,10 @@
       <VillageMyFollow @handleGoVillageDetails="handleGoRecommendDetails" />
     </Popup>
 
+    <PostIndex 
+      ref="postIndexRef"
+      @goDig="emit('goDig')"
+    />
     <IntroClamTip ref="introClamTipRef" @apply="handleLightVillage" />
   </FlexCol>
 </template>
@@ -220,7 +224,6 @@ import { useVillageStore } from '@/store/village';
 import { useGetCurrentLocation } from './composeabe/GetCurrentLocation';
 import { useAuthStore } from '@/store/auth';
 import { useRequireLogin } from '@/common/composeabe/RequireLogin';
-import { useOfficialAccount } from './composeabe/OfficialAccount';
 import { useUserTools } from '@/common/composeabe/UserTools';
 import { ArrayUtils, waitTimeOut } from '@imengyu/imengyu-utils';
 import { toast } from '@/components/utils/DialogAction';
@@ -257,8 +260,9 @@ import ImageSwiper from '@/common/components/parts/ImageSwiper.vue';
 import { useSimplePageListLoader } from '@/components/composeabe/loader/SimplePageListLoader';
 import VillageInfoApi, { type CommonInfoModel } from '@/api/inhert/VillageInfoApi';
 import SimplePageListLoader from '@/components/loader/SimplePageListLoader.vue';
+import PostIndex from './village/dialogs/PostIndex.vue';
 
-const emit = defineEmits(['goVillage']);
+const emit = defineEmits(['goVillage','goDig']);
 const authStore = useAuthStore();
 const villageStore = useVillageStore();
 const themeContext = useTheme();
@@ -269,6 +273,7 @@ const showCityPopup = ref(false);
 const showMyFollowPopup = ref(false);
 const introClamTipRef = ref();
 const introClamTipTimeout = new MemoryTimeOut('IntroClamTip', 1000 * 3600 * 30);//30h
+const postIndexRef = ref<InstanceType<typeof PostIndex>>();
 const appConfiguration = injectAppConfiguration();
 
 const currentRegion = ref<number | null>(null);
@@ -377,8 +382,8 @@ function handleGoAI() {
 }
 async function handleGoPublish() {
   requireLogin(async () => {
-    navTo('/pages/chat/dependent/post/publish', { tag: '亮乡源' });
-  }, '欢迎使用AI助手,登录后以便使用更多功能哦!');
+    postIndexRef.value?.show();
+  }, '欢迎您发布内容,登录后以便使用更多功能哦!');
 }
 async function handleLightVillage() {
   requireLogin(async () => navTo('/pages/home/light/submit-map', { city: currentCity.value }), '登录后才能点亮村社哦!');

+ 73 - 0
src/pages/home/village/dialogs/PostIndex.vue

@@ -0,0 +1,73 @@
+<template>
+  <CommonDialog v-model:show="show" title="我也来写">
+    <template #titlePre>
+      <FlexRow center>
+        <Image src="https://xy.wenlvti.net/app_static/images/home/BadgeNew.png" :width="320" mode="widthFix" />
+      </FlexRow>
+    </template>
+    <FlexCol gap="gap.lg" padding="padding.md">
+      <Touchable
+        v-for="(item, k) in postList"
+        :key="k"
+        direction="column"
+        @click="item.onClick"
+      >
+        <BoxMid
+          position="relative"
+          :padding="32"
+          direction="row"
+          align="center"
+          gap="gap.md"
+        >
+          <Image :src="item.image" :width="100" :height="100" />
+          <FlexCol>
+            <Text :text="item.name" fontConfig="lightImportantTitle" :fontSize="42" />
+            <Text :text="item.desc" fontConfig="lightGoldTitle" :fontSize="30" />
+          </FlexCol>
+        </BoxMid>
+      </Touchable>
+    </FlexCol>
+  </CommonDialog>
+</template>
+
+<script setup lang="ts">
+import BoxMid from '@/common/components/box/BoxMid.vue';
+import CommonDialog from '@/common/components/CommonDialog.vue';
+import Image from '@/components/basic/Image.vue';
+import Text from '@/components/basic/Text.vue';
+import Touchable from '@/components/feedback/Touchable.vue';
+import FlexCol from '@/components/layout/FlexCol.vue';
+import FlexRow from '@/components/layout/FlexRow.vue';
+import { navTo } from '@/components/utils/PageAction';
+import { ref } from 'vue';
+
+const show = ref(false);
+const emit = defineEmits(['goDig']);
+
+const postList = [
+  {
+    image: 'https://xy.wenlvti.net/app_static/images/village/IconLargeIntrod.png',
+    name: '简单贴图',
+    desc: '发布几张相片或一段文字,分享村里的点滴生活,风土人情...发布贴图还可赚取乡源果,快来为村社做贡献吧',
+    onClick: () => {
+      show.value = false;
+      navTo('/pages/home/village/post/publish');
+    },
+  },
+  {
+    image: 'https://xy.wenlvti.net/app_static/images/village/IconLargeWrite.png',
+    name: '挖掘采编',
+    desc: '如果您是专业文史志愿者,可以在这里编写、挖掘村庄的历史,让家乡文化被看见、被记住、被传承',
+    onClick: () => {
+      show.value = false;
+      emit('goDig');
+    },
+  },
+];
+
+defineExpose({
+  show: () => {
+    show.value = true;
+  },
+});
+</script>

+ 0 - 0
src/pages/home/village/post/entry.vue


+ 2 - 2
src/pages/index.vue

@@ -14,7 +14,7 @@
         textColor="whweixinite"
         align="left"
       />
-      <HomeIndex v-show="tabIndex === 0" @goVillage="tabIndex = 1" />
+      <HomeIndex v-show="tabIndex === 0" @goVillage="tabIndex = 1" @goDig="tabIndex = 2" />
       <VillageIndex v-if="tabIndex === 1" showSwitch ref="villageIndex" />
       <DigIndex v-else-if="tabIndex === 2" />
       <DiscoverIndex v-else-if="tabIndex === 3" @goVillage="tabIndex = 1" />
@@ -161,7 +161,7 @@ onShareTimeline(() => {
 })
 onMounted(() => {
   if (isDevEnv) {
-    tabIndex.value = 1;
+    //tabIndex.value = 1;
   }
 })
 </script>