yt 3 сар өмнө
parent
commit
5bcc85b86b
100 өөрчлөгдсөн 1739 нэмэгдсэн , 422 устгасан
  1. 0 0
      tailor-app/myapp/src/app/aichat/aichat.component.html
  2. 122 0
      tailor-app/myapp/src/app/aichat/aichat.component.scss
  3. 22 0
      tailor-app/myapp/src/app/aichat/aichat.component.spec.ts
  4. 0 0
      tailor-app/myapp/src/app/aichat/aichat.component.ts
  5. 16 0
      tailor-app/myapp/src/app/auth.service.spec.ts
  6. 20 0
      tailor-app/myapp/src/app/auth.service.ts
  7. 0 4
      tailor-app/myapp/src/app/community/community.page.html
  8. 117 4
      tailor-app/myapp/src/app/community/community.page.scss
  9. 3 89
      tailor-app/myapp/src/app/community/community.page.ts
  10. 60 223
      tailor-app/myapp/src/app/me/me.page.html
  11. 62 0
      tailor-app/myapp/src/app/me/me.page.scss
  12. 47 102
      tailor-app/myapp/src/app/me/me.page.ts
  13. 1 0
      tailor-app/myapp/src/app/tabs/tabs.routes.ts
  14. 319 0
      tailor-app/myapp/src/lib/ucloud.ts
  15. 38 0
      tailor-app/myapp/src/lib/user/user-login/user-login.component.html
  16. 0 0
      tailor-app/myapp/src/lib/user/user-login/user-login.component.scss
  17. 24 0
      tailor-app/myapp/src/lib/user/user-login/user-login.component.spec.ts
  18. 89 0
      tailor-app/myapp/src/lib/user/user-login/user-login.component.ts
  19. 63 0
      tailor-app/node_modules/.package-lock.json
  20. 8 0
      tailor-app/node_modules/fmode-ng/LICENSE.md
  21. 34 0
      tailor-app/node_modules/fmode-ng/README.md
  22. 10 0
      tailor-app/node_modules/fmode-ng/esm2022/fmode-ng.mjs
  23. 10 0
      tailor-app/node_modules/fmode-ng/esm2022/lib/aigc/agent/agent.prompt.mjs
  24. 10 0
      tailor-app/node_modules/fmode-ng/esm2022/lib/aigc/agent/index.mjs
  25. 10 0
      tailor-app/node_modules/fmode-ng/esm2022/lib/aigc/avatar/avatar.module.mjs
  26. 10 0
      tailor-app/node_modules/fmode-ng/esm2022/lib/aigc/avatar/comp-avatar-particle/avatar.role.mjs
  27. 7 0
      tailor-app/node_modules/fmode-ng/esm2022/lib/aigc/avatar/comp-avatar-particle/comp-avatar-particle.component.mjs
  28. 10 0
      tailor-app/node_modules/fmode-ng/esm2022/lib/aigc/avatar/comp-avatar-particle/index.mjs
  29. 10 0
      tailor-app/node_modules/fmode-ng/esm2022/lib/aigc/avatar/comp-avatar-particle/role-points.class.mjs
  30. 7 0
      tailor-app/node_modules/fmode-ng/esm2022/lib/aigc/avatar/comp-avatar-role-image/comp-avatar-role-image.component.mjs
  31. 7 0
      tailor-app/node_modules/fmode-ng/esm2022/lib/aigc/avatar/comp-avatar-role-video/comp-avatar-role-video.component.mjs
  32. 7 0
      tailor-app/node_modules/fmode-ng/esm2022/lib/aigc/avatar/comp-avatar-talk/comp-avatar-talk.component.mjs
  33. 10 0
      tailor-app/node_modules/fmode-ng/esm2022/lib/aigc/avatar/index.mjs
  34. 10 0
      tailor-app/node_modules/fmode-ng/esm2022/lib/aigc/avatar/interface-avatar-role.mjs
  35. 7 0
      tailor-app/node_modules/fmode-ng/esm2022/lib/aigc/avatar/modal-chat-voice-input/modal-chat-voice-input.component.mjs
  36. 7 0
      tailor-app/node_modules/fmode-ng/esm2022/lib/aigc/chat/chat-header-area/comp-header-area.component.mjs
  37. 10 0
      tailor-app/node_modules/fmode-ng/esm2022/lib/aigc/chat/chat-header-area/index.mjs
  38. 7 0
      tailor-app/node_modules/fmode-ng/esm2022/lib/aigc/chat/chat-list/chat-list.component.mjs
  39. 10 0
      tailor-app/node_modules/fmode-ng/esm2022/lib/aigc/chat/chat-list/index.mjs
  40. 7 0
      tailor-app/node_modules/fmode-ng/esm2022/lib/aigc/chat/chat-message-area/comp-message-area.component.mjs
  41. 10 0
      tailor-app/node_modules/fmode-ng/esm2022/lib/aigc/chat/chat-message-area/index.mjs
  42. 7 0
      tailor-app/node_modules/fmode-ng/esm2022/lib/aigc/chat/chat-message-card/comp-message-card.component.mjs
  43. 10 0
      tailor-app/node_modules/fmode-ng/esm2022/lib/aigc/chat/chat-message-card/duration-str.pipe.mjs
  44. 10 0
      tailor-app/node_modules/fmode-ng/esm2022/lib/aigc/chat/chat-message-card/index.mjs
  45. 10 0
      tailor-app/node_modules/fmode-ng/esm2022/lib/aigc/chat/chat-modal-input/index.mjs
  46. 7 0
      tailor-app/node_modules/fmode-ng/esm2022/lib/aigc/chat/chat-modal-input/modal-audio-message/modal-audio-message.component.mjs
  47. 7 0
      tailor-app/node_modules/fmode-ng/esm2022/lib/aigc/chat/chat-modal-input/modal-input.component.mjs
  48. 7 0
      tailor-app/node_modules/fmode-ng/esm2022/lib/aigc/chat/chat-panel/chat-panel.component.mjs
  49. 7 0
      tailor-app/node_modules/fmode-ng/esm2022/lib/aigc/chat/comp-role-prompt/comp-role-prompt.component.mjs
  50. 10 0
      tailor-app/node_modules/fmode-ng/esm2022/lib/aigc/chat/comp-role-prompt/index.mjs
  51. 10 0
      tailor-app/node_modules/fmode-ng/esm2022/lib/aigc/chat/index.mjs
  52. 10 0
      tailor-app/node_modules/fmode-ng/esm2022/lib/aigc/comp-markdown-preview/clipboard.service.mjs
  53. 7 0
      tailor-app/node_modules/fmode-ng/esm2022/lib/aigc/comp-markdown-preview/markdown-parse.mjs
  54. 7 0
      tailor-app/node_modules/fmode-ng/esm2022/lib/aigc/comp-markdown-preview/markdown-preview.component.mjs
  55. 10 0
      tailor-app/node_modules/fmode-ng/esm2022/lib/aigc/comp-markdown-preview/markdown-preview.module.mjs
  56. 10 0
      tailor-app/node_modules/fmode-ng/esm2022/lib/aigc/comp-markdown-preview/plugins/md-mathjax/index.mjs
  57. 10 0
      tailor-app/node_modules/fmode-ng/esm2022/lib/aigc/index.mjs
  58. 10 0
      tailor-app/node_modules/fmode-ng/esm2022/lib/aigc/service-fmai/fmai.service.mjs
  59. 7 0
      tailor-app/node_modules/fmode-ng/esm2022/lib/aigc/service-fmai/service-chat/chat-class.mjs
  60. 7 0
      tailor-app/node_modules/fmode-ng/esm2022/lib/aigc/service-fmai/service-chat/chat.service.mjs
  61. 10 0
      tailor-app/node_modules/fmode-ng/esm2022/lib/aigc/service-fmai/service-chat/index.mjs
  62. 7 0
      tailor-app/node_modules/fmode-ng/esm2022/lib/aigc/service-fmai/service-chat/mask-list.mjs
  63. 10 0
      tailor-app/node_modules/fmode-ng/esm2022/lib/aigc/service-fmai/service-chat/pipes/chat-content.pipe.mjs
  64. 10 0
      tailor-app/node_modules/fmode-ng/esm2022/lib/aigc/service-fmai/service-chat/pipes/hidexml.pipe.mjs
  65. 10 0
      tailor-app/node_modules/fmode-ng/esm2022/lib/aigc/service-fmai/service-chat/utilnow.pipe.mjs
  66. 10 0
      tailor-app/node_modules/fmode-ng/esm2022/lib/aigc/service-fmai/service-imagine/imagine-func.mjs
  67. 10 0
      tailor-app/node_modules/fmode-ng/esm2022/lib/aigc/service-fmai/service-imagine/imagine-work.mjs
  68. 7 0
      tailor-app/node_modules/fmode-ng/esm2022/lib/aigc/service-fmai/service-imagine/imagine.service.mjs
  69. 10 0
      tailor-app/node_modules/fmode-ng/esm2022/lib/aigc/service-fmai/service-imagine/index.mjs
  70. 10 0
      tailor-app/node_modules/fmode-ng/esm2022/lib/aigc/voice/audio.player.mjs
  71. 10 0
      tailor-app/node_modules/fmode-ng/esm2022/lib/aigc/voice/class-asr.mjs
  72. 7 0
      tailor-app/node_modules/fmode-ng/esm2022/lib/aigc/voice/fmode-voice.service.mjs
  73. 10 0
      tailor-app/node_modules/fmode-ng/esm2022/lib/aigc/voice/index.mjs
  74. 10 0
      tailor-app/node_modules/fmode-ng/esm2022/lib/aigc/voice/lib/pcm2wav.mjs
  75. 10 0
      tailor-app/node_modules/fmode-ng/esm2022/lib/aigc/voice/lib/resample.mjs
  76. 10 0
      tailor-app/node_modules/fmode-ng/esm2022/lib/aigc/voice/stream.player.mjs
  77. 7 0
      tailor-app/node_modules/fmode-ng/esm2022/lib/aigc/voice/tts/fmode-tts-class.mjs
  78. 10 0
      tailor-app/node_modules/fmode-ng/esm2022/lib/aigc/voice/tts/index.mjs
  79. 7 0
      tailor-app/node_modules/fmode-ng/esm2022/lib/map/comp-poi-picker/comp-poi-picker.component.mjs
  80. 10 0
      tailor-app/node_modules/fmode-ng/esm2022/lib/map/comp-poi-picker/comp-poi-picker.module.mjs
  81. 10 0
      tailor-app/node_modules/fmode-ng/esm2022/lib/map/index.mjs
  82. 10 0
      tailor-app/node_modules/fmode-ng/esm2022/lib/map/map.module.mjs
  83. 7 0
      tailor-app/node_modules/fmode-ng/esm2022/lib/map/page-loca-scatter/page-loca-scatter.component.mjs
  84. 7 0
      tailor-app/node_modules/fmode-ng/esm2022/lib/map/page-map.start/page-map.start.component.mjs
  85. 7 0
      tailor-app/node_modules/fmode-ng/esm2022/lib/map/page-plan-route/page-plan-route.component.mjs
  86. 10 0
      tailor-app/node_modules/fmode-ng/esm2022/lib/nova-cloud/index.mjs
  87. 10 0
      tailor-app/node_modules/fmode-ng/esm2022/lib/nova-cloud/ncloud-api-func.mjs
  88. 10 0
      tailor-app/node_modules/fmode-ng/esm2022/lib/nova-cloud/nova-cloud.service.mjs
  89. 10 0
      tailor-app/node_modules/fmode-ng/esm2022/lib/platform/cross.service.mjs
  90. 10 0
      tailor-app/node_modules/fmode-ng/esm2022/lib/platform/index.mjs
  91. 10 0
      tailor-app/node_modules/fmode-ng/esm2022/lib/social/index.mjs
  92. 7 0
      tailor-app/node_modules/fmode-ng/esm2022/lib/social/wechat/wechat-jssdk.service.mjs
  93. 7 0
      tailor-app/node_modules/fmode-ng/esm2022/lib/storage/comp-hwobs-manager/hwobs-manager.component.mjs
  94. 10 0
      tailor-app/node_modules/fmode-ng/esm2022/lib/storage/index.mjs
  95. 7 0
      tailor-app/node_modules/fmode-ng/esm2022/lib/storage/service-hwobs/hwobs.service.mjs
  96. 10 0
      tailor-app/node_modules/fmode-ng/esm2022/lib/storage/service-hwobs/index.mjs
  97. 1 0
      tailor-app/node_modules/fmode-ng/esm2022/lib/storage/service-hwobs/typings/esdk-obs-browser.mjs
  98. 10 0
      tailor-app/node_modules/fmode-ng/esm2022/lib/storage/service-upload/index.mjs
  99. 7 0
      tailor-app/node_modules/fmode-ng/esm2022/lib/storage/service-upload/nova-upload.service.mjs
  100. 10 0
      tailor-app/node_modules/fmode-ng/esm2022/lib/storage/service-upload/util-file-md5.mjs

+ 0 - 0
tailor-app/myapp/src/app/aichat/aichat.component.html


+ 122 - 0
tailor-app/myapp/src/app/aichat/aichat.component.scss

@@ -0,0 +1,122 @@
+.header-space {
+  height: 40px; /* 留出空白区域的高度 */
+}
+
+ion-title {
+    flex: 1; // 使标题占据可用空间
+    text-align: left; // 确保文字左对齐
+    margin-left: 16px; // 左侧边距,可以根据需要调整
+    margin-top: 5px;
+    color: rgb(71, 68, 68);
+  }
+  
+  ion-header {
+    background-color: #3880ff; // 设置头部背景色
+  }
+  
+  
+  ion-card {
+    margin: 10px; // 设置卡片之间的间距
+    border-radius: 10px; // 设置卡片圆角
+    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1); // 添加阴影效果
+  }
+  
+  ion-card-header {
+    background-color: #d8e5fa; // 设置头部背景色
+    color: white; // 设置头部文字颜色
+  }
+  
+  ion-card-title {
+    font-size: 1.2em; // 设置卡片标题字体大小
+    font-weight: bold; // 设置卡片标题字体加粗
+  }
+  
+  ion-item {
+    --ion-item-background: transparent; // 设置列表项背景透明
+  }
+  
+  ion-label {
+    color: #333; // 设置标签文字颜色
+  }
+  
+  
+  
+  h2 {
+    font-size: 1em; // 设置二级标题字体大小
+    margin: 0; // 去掉默认外边距
+  }
+  
+  p {
+    font-size: 0.9em; // 设置段落字体大小
+    color: #666; // 设置段落文字颜色
+  }
+  
+  ion-list {
+    padding: 0; // 去掉列表内边距
+  }
+  
+  ion-card-content {
+    padding: 10px; // 设置卡片内容内边距
+  }
+  
+  ion-button {
+    --background: #3880ff; // 设置按钮背景色
+    --color: white; // 设置按钮文字颜色
+    margin-top: 10px; // 设置按钮与上方内容的间距
+    border-radius: 20px; // 设置按钮圆角
+  }
+  
+  
+  .chat-partner-area {
+    display: flex;
+    align-items: center;
+    margin-bottom: 20px;
+    border: 1px solid #ccc;
+    border-radius: 10px;
+    padding: 15px;
+  
+    .avatar {
+      width: 60px;
+      height: 60px;
+      border-radius: 50%;
+      margin-right: 15px;
+    }
+  
+    .description {
+      flex-grow: 1;
+    }
+  
+    ion-button {
+      border-radius: 20px;
+    }
+  }
+  
+  .role-interaction-area {
+    h2 {
+      margin-bottom: 15px;
+    }
+  
+    .role-container {
+      display: flex;
+      align-items: center;
+      margin-bottom: 15px;
+      border: 1px solid #ccc;
+      border-radius: 10px;
+      padding: 15px;
+  
+      .avatar {
+        width: 50px;
+        height: 50px;
+        border-radius: 50%;
+        margin-right: 10px;
+      }
+  
+      .role-description {
+        flex-grow: 1;
+      }
+  
+      ion-button {
+        border-radius: 20px;
+      }
+    }
+  }

+ 22 - 0
tailor-app/myapp/src/app/aichat/aichat.component.spec.ts

@@ -0,0 +1,22 @@
+import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing';
+
+import { AIchatComponent } from './aichat.component';
+
+describe('AIchatComponent', () => {
+  let component: AIchatComponent;
+  let fixture: ComponentFixture<AIchatComponent>;
+
+  beforeEach(waitForAsync(() => {
+    TestBed.configureTestingModule({
+      imports: [AIchatComponent],
+    }).compileComponents();
+
+    fixture = TestBed.createComponent(AIchatComponent);
+    component = fixture.componentInstance;
+    fixture.detectChanges();
+  }));
+
+  it('should create', () => {
+    expect(component).toBeTruthy();
+  });
+});

+ 0 - 0
tailor-app/myapp/src/app/aichat/aichat.component.ts


+ 16 - 0
tailor-app/myapp/src/app/auth.service.spec.ts

@@ -0,0 +1,16 @@
+import { TestBed } from '@angular/core/testing';
+
+import { AuthService } from './auth.service';
+
+describe('AuthService', () => {
+  let service: AuthService;
+
+  beforeEach(() => {
+    TestBed.configureTestingModule({});
+    service = TestBed.inject(AuthService);
+  });
+
+  it('should be created', () => {
+    expect(service).toBeTruthy();
+  });
+});

+ 20 - 0
tailor-app/myapp/src/app/auth.service.ts

@@ -0,0 +1,20 @@
+import { Injectable } from '@angular/core';
+import { HttpClient } from '@angular/common/http';
+import { Observable } from 'rxjs';
+
+@Injectable({
+  providedIn: 'root'
+})
+export class AuthService {
+  private apiUrl = 'http://localhost:5000'; // 后端 API 地址
+
+  constructor(private http: HttpClient) {}
+
+  register(username: string, email: string, password: string): Observable<any> {
+    return this.http.post(`${this.apiUrl}/register`, { username, email, password });
+  }
+
+  login(email: string, password: string): Observable<any> {
+    return this.http.post(`${this.apiUrl}/login`, { email, password });
+  }
+}

+ 0 - 4
tailor-app/myapp/src/app/community/community.page.html

@@ -1,4 +0,0 @@
-
-<ion-content>
-  <div class="echarts" id="chart"></div>
-</ion-content>

+ 117 - 4
tailor-app/myapp/src/app/community/community.page.scss

@@ -1,5 +1,118 @@
-.echarts{
-    width: 340px;
-    height: 200px;
-    margin: 0 auto;
+ion-title {
+  flex: 1; // 使标题占据可用空间
+  text-align: left; // 确保文字左对齐
+  margin-left: 16px; // 左侧边距,可以根据需要调整
+  margin-top: 5px;
+  color: rgb(71, 68, 68);
 }
+
+ion-header {
+  background-color: #3880ff; // 设置头部背景色
+}
+
+
+ion-card {
+  margin: 10px; // 设置卡片之间的间距
+  border-radius: 10px; // 设置卡片圆角
+  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1); // 添加阴影效果
+}
+
+ion-card-header {
+  background-color: #d8e5fa; // 设置头部背景色
+  color: white; // 设置头部文字颜色
+}
+
+ion-card-title {
+  font-size: 1.2em; // 设置卡片标题字体大小
+  font-weight: bold; // 设置卡片标题字体加粗
+}
+
+ion-item {
+  --ion-item-background: transparent; // 设置列表项背景透明
+}
+
+ion-label {
+  color: #333; // 设置标签文字颜色
+}
+
+
+
+h2 {
+  font-size: 1em; // 设置二级标题字体大小
+  margin: 0; // 去掉默认外边距
+}
+
+p {
+  font-size: 0.9em; // 设置段落字体大小
+  color: #666; // 设置段落文字颜色
+}
+
+ion-list {
+  padding: 0; // 去掉列表内边距
+}
+
+ion-card-content {
+  padding: 10px; // 设置卡片内容内边距
+}
+
+ion-button {
+  --background: #3880ff; // 设置按钮背景色
+  --color: white; // 设置按钮文字颜色
+  margin-top: 10px; // 设置按钮与上方内容的间距
+  border-radius: 20px; // 设置按钮圆角
+}
+
+
+.chat-partner-area {
+  display: flex;
+  align-items: center;
+  margin-bottom: 20px;
+  border: 1px solid #ccc;
+  border-radius: 10px;
+  padding: 15px;
+
+  .avatar {
+    width: 60px;
+    height: 60px;
+    border-radius: 50%;
+    margin-right: 15px;
+  }
+
+  .description {
+    flex-grow: 1;
+  }
+
+  ion-button {
+    border-radius: 20px;
+  }
+}
+
+.role-interaction-area {
+  h2 {
+    margin-bottom: 15px;
+  }
+
+  .role-container {
+    display: flex;
+    align-items: center;
+    margin-bottom: 15px;
+    border: 1px solid #ccc;
+    border-radius: 10px;
+    padding: 15px;
+
+    .avatar {
+      width: 50px;
+      height: 50px;
+      border-radius: 50%;
+      margin-right: 10px;
+    }
+
+    .role-description {
+      flex-grow: 1;
+    }
+
+    ion-button {
+      border-radius: 20px;
+    }
+  }
+}

+ 3 - 89
tailor-app/myapp/src/app/community/community.page.ts

@@ -1,22 +1,4 @@
-
-import { Component, NgModule, OnInit } from '@angular/core';
-import { CommonModule } from '@angular/common';
-import { FormsModule } from '@angular/forms';
-import { addIcons } from 'ionicons';
-import { camera,trendingUpOutline,sparklesOutline,cloudyOutline,diceOutline} from 'ionicons/icons';
-import { IonContent, IonHeader, IonTitle, IonToolbar, IonButton, IonLabel, IonItem, IonList, IonBackButton, IonButtons, IonIcon, IonItemDivider, IonAvatar, IonThumbnail, IonItemOptions, IonItemOption, IonItemSliding, IonInput, IonCheckbox, IonRadio, IonToggle, IonRadioGroup, IonSearchbar,IonSegment,IonSegmentButton,IonDatetime,IonFooter,IonCardContent,IonCardTitle,IonCardHeader,IonCard,IonCol,IonRow,IonGrid,IonChip,IonTabButton,IonListHeader,ItemReorderEventDetail, IonTabBar, IonTabs,IonCardSubtitle,IonImg,IonBadge   } from '@ionic/angular/standalone';
-addIcons({camera,trendingUpOutline,sparklesOutline,cloudyOutline,diceOutline})
-
-import * as echarts from 'echarts';
-@Component({
-  selector: 'app-community',
-  templateUrl: './community.page.html',
-  styleUrls: ['./community.page.scss'],
-  standalone: true,
-  imports: [IonContent, IonHeader, IonTitle, IonToolbar, CommonModule, FormsModule, IonButton,  IonLabel, IonLabel, IonList, IonItem, IonBackButton, IonButtons, IonIcon, IonItemDivider, IonAvatar, IonThumbnail, IonItemOptions, IonItemSliding, IonItemOption, IonItemOptions,IonInput,IonCheckbox,IonRadio,IonToggle,IonRadioGroup,IonSearchbar,IonSegment,IonSegmentButton,IonDatetime,IonFooter,IonCardContent,IonCardTitle,IonCardHeader,IonCard,IonCol,IonRow,IonGrid,IonChip,IonTabButton,IonTabBar,IonTabs,IonListHeader,IonCardSubtitle,IonImg,IonBadge ]
-
-})
-
+import { Component, OnInit } from '@angular/core';
 
 export class CommunityPage implements OnInit {
 
@@ -24,74 +6,6 @@ export class CommunityPage implements OnInit {
 
   ngOnInit() {
     
-    this.initEchart();
+    
   }
-  public chart: any;
-  initEchart() {
-    let ec = echarts as any;
-    let container = document.getElementById('chart');
-    this.chart = ec.init(container);
-    let option = {
-      tooltip: {
-        trigger: 'axis'
-      },
-      legend: {
-        data: ['邮件营销', '联盟广告', '视频广告', '直接访问', '搜索引擎']
-      },
-      grid: {
-        left: "2%",
-        right: "3%",
-        bottom: "1%",
-        borderWidth:10,
-        containLabel: true
-      },
-      toolbox: {
-        feature: {
-          saveAsImage: {}
-        }
-      },
-      xAxis: {
-        type: 'category',
-        boundaryGap: false,
-        data: ['周一', '周二', '周三', '周四', '周五', '周六', '周日']
-      },
-      yAxis: {
-        type: 'value'
-      },
-      series: [
-        {
-          name: '邮件营销',
-          type: 'line',
-          stack: '总量',
-          data: [120, 132, 101, 134, 90, 230, 210]
-        },
-        {
-          name: '联盟广告',
-          type: 'line',
-          stack: '总量',
-          data: [220, 182, 191, 234, 290, 330, 310]
-        },
-        {
-          name: '视频广告',
-          type: 'line',
-          stack: '总量',
-          data: [150, 232, 201, 154, 190, 330, 410]
-        },
-        {
-          name: '直接访问',
-          type: 'line',
-          stack: '总量',
-          data: [320, 332, 301, 334, 390, 330, 320]
-        },
-        {
-          name: '搜索引擎',
-          type: 'line',
-          stack: '总量',
-          data: [820, 932, 901, 934, 1290, 1330, 1320]
-        }
-      ]
-    };
- 
-    this.chart.setOption(option);
-}}
-
+}

+ 60 - 223
tailor-app/myapp/src/app/me/me.page.html

@@ -1,239 +1,76 @@
-<ion-header [translucent]="true">
-  <ion-toolbar color="success">
-    <ion-title>me</ion-title>
-  </ion-toolbar>
-</ion-header>
 
-<ion-content [fullscreen]="true">
-
-    <!-- GPT组件 -->
-    <h1>GPT组件</h1>
-     <ion-input type="" [(ngModel)]="inputValue"  ></ion-input>
-    <ion-button (click)="printInputValue()">提交</ion-button>
-   {{gptre}}
-
-
-  <h1>页面跳转和组件使用</h1>
-  <!-- 页面跳转和组件使用 -->
-  <ion-button [routerLink]="[ '/yiyun' ]">
-    跳转到yiyun
-  </ion-button>
-
-  <app-slide></app-slide>
-  <h1>button组件调用</h1>
-  <!-- button组件调用 -->
-  <ion-button [routerLink]="[ '/yiyun' ]" color="warning">
-    修改按钮颜色
-  </ion-button>
- 
-  <ion-buttons slot="start">
-    <ion-back-button>返回i按钮</ion-back-button>
-  </ion-buttons>
-
-  <ion-button expand="block">
-    按钮可以block
-  </ion-button>
-
-  <ion-button expand="full">
-    按钮可以直角
-  </ion-button>
-
-  <ion-button fill="clear" expand="block">
-    按钮可以透明背景填充
-  </ion-button>
-
-  <ion-button>
-    <ion-icon slot="icon-only" name="add"></ion-icon>
-  </ion-button>
-  <ion-button fill="clear">
-    <ion-icon slot="icon-only" name="add"></ion-icon>
-  </ion-button>
-
-  <ion-button size="small">
-    小按钮
-  </ion-button>
-  <ion-button size="large">
-    大按钮
-  </ion-button>
-
-  <ion-button mode="ios" color="primary">
-    ios按钮
-  </ion-button>
-  <ion-button mode="md" color="primary">
-    android按钮
-  </ion-button>
-
-  <ion-button>
-    <ion-icon name="add" slot="start"></ion-icon>
-    图片在左侧文字在右侧按钮
-  </ion-button>
-  <ion-button>
-    <ion-icon name="add" slot="end"></ion-icon>
-    图片在右侧文字在右侧按钮
-  </ion-button>
-
-  <!-- List组件调用 -->
-  <h1>List组件调用 </h1>
-  <ion-list lines="full">
-    <ion-item *ngFor="let item of list" [routerLink]="[ '/yiyun' ]">
-      {{item}}
-    </ion-item>
-  </ion-list>
+<ion-content class="my-page-content">
+  <!-- 添加空白区域 -->
+  <div class="header-space"></div>
+
+  <!-- 用户信息区域 -->
+    <ion-avatar>
+      <img src="assets/avatar.png" alt="用户头像"/>
+    </ion-avatar>
+    <ion-content>
+      <!-- 用户信息 -->
+      <ion-item lines="none" class="user-info">
+        <ion-avatar slot="start">
+          <!-- 显示头像,如果没有头像,显示默认头像 -->
+          <img [src]="userData?.avatar || 'assets/img/user-avatar.jpg'" alt="User Avatar" />
+        </ion-avatar>
+        <ion-label>
+          <h2>{{ userData?.name}}</h2>
+          <p>您没有访问权限,请登录。</p>
+        </ion-label>
+        <!-- 登录、注册、编辑和退出登录按钮 -->
+        <div class="user-actions" slot="end">
+          @if(!currentUser?.id){
+            <ion-button (click)="signup()" fill="outline" color="primary">
+              注册
+            </ion-button>
+            <ion-button (click)="login()" fill="outline" color="primary">
+              登录
+            </ion-button>
+          }
+          @if(currentUser?.id){
+            <ion-button (click)="logout()" fill="clear" color="danger">
+              退出登录
+            </ion-button>
+          }
+        </div>
+        </ion-item>
 
   <ion-list>
-    <ion-item-divider>
-      <ion-label>分组列表A</ion-label>
-    </ion-item-divider>
-    <ion-item>
-      a
-    </ion-item>
-    <ion-item>
-      aaa
+    <!-- 我的定制 -->
+    <ion-item button (click)="customizations()" class="my-item">
+      <ion-icon slot="start" name="shirt-outline"></ion-icon>
+      <ion-label>我的定制</ion-label>
     </ion-item>
 
-    <ion-item-divider>
-      <ion-label>B</ion-label>
-    </ion-item-divider>
-    <ion-item>
-      b
+    <!-- 我的收藏 -->
+    <ion-item button (click)="favorites()" class="my-item">
+      <ion-icon slot="start" name="heart-outline"></ion-icon>
+      <ion-label>我的收藏</ion-label>
     </ion-item>
-    <ion-item>
-      bbb
-    </ion-item>
-  </ion-list>
 
-  <ion-list lines="full">
-    <ion-item *ngFor="let item of list">
-      <ion-icon slot="start" name="add"></ion-icon>
-      带图标列表{{item}}
+    <!-- 会员服务 -->
+    <ion-item button (click)="AIchat()" class="my-item">
+      <ion-icon slot="start" name="star-outline"></ion-icon>
+      <ion-label>AI服务</ion-label>
     </ion-item>
-  </ion-list>
 
-  <ion-list>
-    <ion-item *ngFor="let item of list">
-      <ion-avatar item-left>
-        <img src="assets/shapes.svg">
-      </ion-avatar>
-      <ion-label>列表中的头像</ion-label>
+    <!-- 系统设置 -->
+    <ion-item button (click)="systemsettings()" class="my-item">
+      <ion-icon slot="start" name="settings-outline"></ion-icon>
+      <ion-label>系统设置</ion-label>
     </ion-item>
-  </ion-list>
 
-  <ion-list>
-    <ion-item *ngFor="let item of list">
-      <ion-thumbnail item-left>
-        <img src="assets/shapes.svg">
-      </ion-thumbnail>
-      <div>
-        <h2>我是标题</h2>
-        <p>我是新闻</p>
-      </div>
-      <button ion-button clear item-right></button>
+    <!-- 反馈与帮助 -->
+    <ion-item button (click)="feedback()" class="my-item">
+      <ion-icon slot="start" name="help-circle-outline"></ion-icon>
+      <ion-label>反馈与帮助</ion-label>
     </ion-item>
-  </ion-list>
-
-  <ion-list>
-    <ion-item-sliding>
-      <ion-item>
-        <ion-label>滑动列表1</ion-label>
-      </ion-item>
-      <ion-item-options side="start">
-        <ion-item-option>Favorite</ion-item-option>
-        <ion-item-option color="primary">Share</ion-item-option>
-      </ion-item-options>
 
-      <ion-item-options side="end">
-        <ion-item-option>Unread</ion-item-option>
-      </ion-item-options>
-    </ion-item-sliding>
-
-    <ion-item-sliding>
-      <ion-item>
-        <ion-label>滑动列表2</ion-label>
-      </ion-item>
-      <ion-item-options side="start">
-        <ion-item-option>Favorite</ion-item-option>
-        <ion-item-option color="primary">Share</ion-item-option>
-      </ion-item-options>
-
-      <ion-item-options side="end">
-        <ion-item-option>Unread</ion-item-option>
-      </ion-item-options>
-    </ion-item-sliding>
-  </ion-list>
-  <!-- 表单组件 -->
-  <h1>表单组件</h1>
-
-  <ion-list>
-    <ion-item>
-      <ion-label>用户名</ion-label>
-      <ion-input [(ngModel)]="peopleInfo.username"></ion-input>
-    </ion-item>
-
-    <ion-item>
-      <ion-label>是否本科</ion-label>
-      <ion-toggle slot="end" [(ngModel)]="peopleInfo.flag"></ion-toggle>
-    </ion-item>
-
-    <ion-radio-group [(ngModel)]="peopleInfo.payType">
-      <ion-item>
-        <ion-avatar item-left>
-          <img src="assets/shapes.svg">
-        </ion-avatar>
-        <ion-label>支付宝支付</ion-label>
-        <ion-radio value="1"></ion-radio>
-      </ion-item>
-
-      <ion-item>
-        <ion-avatar item-left>
-          <img src="assets/shapes.svg">
-        </ion-avatar>
-        <ion-label>微信支付</ion-label>
-        <ion-radio value="2"></ion-radio>
-      </ion-item>
-
-    </ion-radio-group>
-
-    <ion-item>
-      <ion-label>checkbox</ion-label>
-      <ion-checkbox></ion-checkbox>
+    <!-- 登出 -->
+    <ion-item button (click)="logout()" class="my-item">
+      <ion-icon slot="start" name="log-out-outline"></ion-icon>
+      <ion-label>登出</ion-label>
     </ion-item>
   </ion-list>
-  {{peopleInfo|json}}
-
-  <!-- 搜索框 -->
-  <h1>搜索框</h1>
-  <ion-searchbar animated="true" placeholder="Animated"></ion-searchbar>
-  <ion-searchbar placeholder="Filter Pizza" (ionInput)="onSearchInput($event)" animated></ion-searchbar>
-
-  <!-- segment演示 -->
-  <h1>segment演示</h1>
-  <ion-segment [(ngModel)]="tab">
-    <ion-segment-button value="tab1">
-      <ion-label>详情</ion-label>
-    </ion-segment-button>
-    <ion-segment-button value="tab2">
-      <ion-label>评论</ion-label>
-    </ion-segment-button>
-
-    <div class="info" [ngSwitch]="tab">
-      <div *ngSwitchCase="'tab1'">商品简介</div>
-      <div *ngSwitchCase="'tab2'">商品评论</div>
-
-    </div>
-
-
-    {{tab}}
-
-    <!-- 日期组件 -->
-    <h1>日期组件</h1>
-    <ion-list>
-
-      <ion-item>
-        <ion-label>Date</ion-label>
-        <ion-datetime display-format="DD.MM.YYYY HH:mm"></ion-datetime>
-      </ion-item>
-    </ion-list>
-  </ion-segment>
-
-
 </ion-content>

+ 62 - 0
tailor-app/myapp/src/app/me/me.page.scss

@@ -0,0 +1,62 @@
+.my-page-content {
+    --background: #e0f7fa; /* 设置整体背景颜色为浅蓝色 */
+  }
+  .header-space {
+    height: 40px; /* 留出空白区域的高度 */
+  }
+  .user-info {
+    display: flex;
+    align-items: center;
+    padding: 16px;
+    background-color: white; /* 用户信息背景 */
+    border-bottom: 2px solid #e5e5e5; /* 底部边框 */
+  }
+  ion-item {
+    margin: 8px 0;
+  }
+
+  ion-button {
+    margin-top: 10px;
+  }
+  
+  ion-label {
+    font-size: 14px;
+    color: #555;
+  }
+
+  .user-info ion-avatar {
+    width: 64px;
+    height: 64px;
+    margin-right: 16px;
+  }
+  
+  .user-details {
+    flex: 1;
+  }
+  
+  .user-details h2 {
+    margin: 0;
+    font-size: 18px;
+    color: #333; /* 用户名颜色 */
+  }
+  
+  .user-details p {
+    margin: 0;
+    font-size: 14px;
+    color: #999; /* 用户邮箱颜色 */
+  }
+  
+  .my-item {
+    --ion-item-background: white; /* 列表项背景 */
+    --ion-item-border-color: #e5e5e5; /* 列表项边框颜色 */
+    --ion-item-border-width: 2px; /* 列表项边框宽度 */
+  }
+  
+  .my-item ion-icon {
+    color: #5fe407; /* 图标颜色 */
+    font-size: 24px; /* 图标大小 */
+  }
+  
+  .my-item ion-label {
+    font-size: 16px; /* 列表项文本大小 */
+  }

+ 47 - 102
tailor-app/myapp/src/app/me/me.page.ts

@@ -1,13 +1,12 @@
 import { Component, OnInit } from '@angular/core';
-import { CommonModule } from '@angular/common';
-import { FormsModule } from '@angular/forms';
-import { IonContent, IonHeader, IonTitle, IonToolbar, IonButton, IonLabel, IonItem, IonList, IonBackButton, IonButtons, IonIcon, IonItemDivider, IonAvatar, IonThumbnail, IonItemOptions, IonItemOption, IonItemSliding, IonInput, IonCheckbox, IonRadio, IonToggle, IonRadioGroup, IonSearchbar, IonSegment, IonSegmentButton, IonDatetime } from '@ionic/angular/standalone';
-import { RouterModule } from '@angular/router';
-import { SlideModule } from '../module/slide/slide.module';
+import { IonContent, IonHeader, IonTitle,IonButton, IonLabel, IonItem, IonList, IonIcon, IonAvatar,NavController} from '@ionic/angular/standalone';
 import { addIcons } from 'ionicons';
 import { add } from 'ionicons/icons';
-// import {FmodeChatCompletion} from "fmode-ng"
-import { TestChatCompletion } from './test-chat-completion';
+import { CloudUser } from 'src/lib/ucloud';
+import { openUserLoginModal } from 'src/lib/user/user-login/user-login.component';
+import { IonNote } from '@ionic/angular/standalone';
+import { IonToolbar } from '@ionic/angular/standalone';
+import { ModalController } from '@ionic/angular/standalone';
 
 addIcons({ add })
 @Component({
@@ -15,110 +14,56 @@ addIcons({ add })
   templateUrl: './me.page.html',
   styleUrls: ['./me.page.scss'],
   standalone: true,
-  imports: [IonContent, IonHeader, IonTitle, IonToolbar, CommonModule, FormsModule, IonButton, RouterModule, IonLabel, IonLabel, IonList, IonItem, SlideModule, IonBackButton, IonButtons, IonIcon, IonItemDivider, IonAvatar, IonThumbnail, IonItemOptions, IonItemSliding, IonItemOption, IonItemOptions, IonInput, IonCheckbox, IonRadio, IonToggle, IonRadioGroup, IonSearchbar, IonSegment, IonSegmentButton, IonDatetime]
+  imports: [IonContent, IonHeader, IonTitle,IonList,IonAvatar,
+    IonLabel,IonButton,IonIcon,IonItem,IonNote,IonToolbar,
+    IonAvatar,IonItem]
 })
 export class MePage implements OnInit {
-  public list: any = []
-  public tab = "tab1"
-  constructor() { }
-  public inputValue = ""
-  public gptre = ""
-  public peopleInfo: any = {
-    username: '',
-    age: 20,
-    flag: true,
-    payType: '1',
-    checkBoxList: [
-      { val: '吃饭', ischecked: true },
-      { val: '睡觉', ischecked: false },
-      { val: '敲代码', ischecked: false }
-    ],
-    cityList: ['北京', '上海', '深圳'],
-    city: '北京'
+  currentUser:CloudUser|undefined
+  // 用户信息数据
+  userData = {
+    name: '',  // 默认值,可以为空测试默认显示“游客”
+    avatar: 'assets/img'  // 默认头像路径
+  };
+
+  constructor(private navCtrl: NavController, private modalCtrl: ModalController) {
+    this.currentUser = new CloudUser();
   }
-  ngOnInit() {
-    for (var i = 0; i < 5; i++) {
-      this.list.push(`aaaaaaa${i}`);
+
+  async login(){
+    // 弹出登录窗口
+    let user = await openUserLoginModal(this.modalCtrl);
+    if(user?.id){
+      this.currentUser = user
     }
   }
-  onSearchInput(event: any) {
-    console.log(event.target.value);
-  }
-  async printInputValue() {
-    console.log("开始解析");
-
-    let token = "r:16cd8f27084ff647fcdb5308a6783c4c"
-    localStorage.setItem("token",token)
-    let messageList: any = [
-      {
-        role: "system", content: `${new Date().toLocaleString}`
-      },
-      {
-        role: "user", content: this.inputValue
-      }
-    ]
-
-    let completion=new TestChatCompletion(messageList)
-    completion.createCompletionByStream()
-    setInterval(()=>{
-      console.log(messageList);
-      this.gptre=messageList[messageList.length-1].content
-    },1000)
-
-
-    // let bodyJson = {
-    //   "token": `Bearer ${token}`,
-    //   "messages": messageList,
-    //   "model": "fmode-4.5-128k",
-    //   "temperature": 0.5,
-    //   "presence_penalty": 0,
-    //   "frequency_penalty": 0,
-    //   "top_p": 1,
-    //   "stream": true
-    // };
-
-    // let response = await fetch("https://test.fmode.cn/api/apig/aigc/gpt/v1/chat/completions", {
-    //   "headers": {
-    //     "accept": "text/event-stream",
-    //   },
-    //   "body": JSON.stringify(bodyJson),
-    //   "method": "POST",
-    //   "mode": "cors",
-    //   "credentials": "omit"
-    // });
-    // let reader = response.body?.getReader()
-    // if (!reader) {
-    //   throw new Error("Failed to get the response reader.");
-    // }
-
-    // let decoder = new TextDecoder();
-    // let buffer = "";
 
-    // while (true) {
-    //   let { done, value } = await reader.read();
-    //   if (done) {
-    //     break;
-    //   }
-    //   let data = decoder.decode(value);
-    //   let messages = data.split("\n");
-    //   console.log(messages);
-
-    //   for (let i = 0; i < messages.length - 1; i++) {
-    //     let message = messages[i];
-    //     console.log(message);
-    //     let dataStr: string = message.split("data: ")[1]
-    //     if (dataStr && dataStr.startsWith("{")) {
-    //       try {
-    //         let json = JSON.parse(dataStr);
-    //         let content = json.choices[0].delta.content
-    //         this.gptre = this.gptre + content
-    //       } catch (err) { }
-    //     }
+  async signup(){
+    // 弹出注册窗口
+    let user = await openUserLoginModal(this.modalCtrl,"signup");
+    if(user?.id){
+      this.currentUser = user
+    }
+  }
 
+  logout(){
+    this.currentUser?.logout();
+  }
+  
+  customizations(){
 
-    //   }
-    // }
+  }
+  favorites(){
 
+  }
+  systemsettings(){
 
   }
+  feedback(){
+    
+  }
+  AIchat(){
+    
+  }
+  ngOnInit() {}
 }

+ 1 - 0
tailor-app/myapp/src/app/tabs/tabs.routes.ts

@@ -31,6 +31,7 @@ export const routes: Routes = [
         loadComponent: () =>
           import('../yiyun/yiyun.page').then((m) => m.YiyunPage),
       },
+
       {
         path: '',
         redirectTo: '/tabs/yiyun',

+ 319 - 0
tailor-app/myapp/src/lib/ucloud.ts

@@ -0,0 +1,319 @@
+export class CloudObject {
+    className: string;
+    id: string | null = null;
+    createdAt:any;
+    updatedAt:any;
+    data: Record<string, any> = {};
+
+    constructor(className: string) {
+        this.className = className;
+    }
+
+    toPointer() {
+        return { "__type": "Pointer", "className": this.className, "objectId": this.id };
+    }
+
+    set(json: Record<string, any>) {
+        Object.keys(json).forEach(key => {
+            if (["objectId", "id", "createdAt", "updatedAt", "ACL"].indexOf(key) > -1) {
+                return;
+            }
+            this.data[key] = json[key];
+        });
+    }
+
+    get(key: string) {
+        return this.data[key] || null;
+    }
+
+    async save() {
+        let method = "POST";
+        let url = `http://dev.fmode.cn:1337/parse/classes/${this.className}`;
+
+        // 更新
+        if (this.id) {
+            url += `/${this.id}`;
+            method = "PUT";
+        }
+
+        const body = JSON.stringify(this.data);
+        const response = await fetch(url, {
+            headers: {
+                "content-type": "application/json;charset=UTF-8",
+                "x-parse-application-id": "dev"
+            },
+            body: body,
+            method: method,
+            mode: "cors",
+            credentials: "omit"
+        });
+
+        const result = await response?.json();
+        if (result?.error) {
+            console.error(result?.error);
+        }
+        if (result?.objectId) {
+            this.id = result?.objectId;
+        }
+        return this;
+    }
+
+    async destroy() {
+        if (!this.id) return;
+        const response = await fetch(`http://dev.fmode.cn:1337/parse/classes/${this.className}/${this.id}`, {
+            headers: {
+                "x-parse-application-id": "dev"
+            },
+            body: null,
+            method: "DELETE",
+            mode: "cors",
+            credentials: "omit"
+        });
+
+        const result = await response?.json();
+        if (result) {
+            this.id = null;
+        }
+        return true;
+    }
+}
+
+// CloudQuery.ts
+export class CloudQuery {
+    className: string;
+    whereOptions: Record<string, any> = {};
+
+    constructor(className: string) {
+        this.className = className;
+    }
+
+    greaterThan(key: string, value: any) {
+        if (!this.whereOptions[key]) this.whereOptions[key] = {};
+        this.whereOptions[key]["$gt"] = value;
+    }
+
+    greaterThanAndEqualTo(key: string, value: any) {
+        if (!this.whereOptions[key]) this.whereOptions[key] = {};
+        this.whereOptions[key]["$gte"] = value;
+    }
+
+    lessThan(key: string, value: any) {
+        if (!this.whereOptions[key]) this.whereOptions[key] = {};
+        this.whereOptions[key]["$lt"] = value;
+    }
+
+    lessThanAndEqualTo(key: string, value: any) {
+        if (!this.whereOptions[key]) this.whereOptions[key] = {};
+        this.whereOptions[key]["$lte"] = value;
+    }
+
+    equalTo(key: string, value: any) {
+        this.whereOptions[key] = value;
+    }
+
+    async get(id: string) {
+        const url = `http://dev.fmode.cn:1337/parse/classes/${this.className}/${id}?`;
+
+        const response = await fetch(url, {
+            headers: {
+                "if-none-match": "W/\"1f0-ghxH2EwTk6Blz0g89ivf2adBDKY\"",
+                "x-parse-application-id": "dev"
+            },
+            body: null,
+            method: "GET",
+            mode: "cors",
+            credentials: "omit"
+        });
+
+        const json = await response?.json();
+        return json || {};
+    }
+
+    async find() {
+        let url = `http://dev.fmode.cn:1337/parse/classes/${this.className}?`;
+
+        if (Object.keys(this.whereOptions).length) {
+            const whereStr = JSON.stringify(this.whereOptions);
+            url += `where=${whereStr}`;
+        }
+
+        const response = await fetch(url, {
+            headers: {
+                "if-none-match": "W/\"1f0-ghxH2EwTk6Blz0g89ivf2adBDKY\"",
+                "x-parse-application-id": "dev"
+            },
+            body: null,
+            method: "GET",
+            mode: "cors",
+            credentials: "omit"
+        });
+
+        const json = await response?.json();
+        let list = json?.results || []
+        let objList = list.map((item:any)=>this.dataToObj(item))
+        return objList || [];
+    }
+
+    async first() {
+        let url = `http://dev.fmode.cn:1337/parse/classes/${this.className}?`;
+
+        if (Object.keys(this.whereOptions).length) {
+            const whereStr = JSON.stringify(this.whereOptions);
+            url += `where=${whereStr}`;
+        }
+
+        const response = await fetch(url, {
+            headers: {
+                "if-none-match": "W/\"1f0-ghxH2EwTk6Blz0g89ivf2adBDKY\"",
+                "x-parse-application-id": "dev"
+            },
+            body: null,
+            method: "GET",
+            mode: "cors",
+            credentials: "omit"
+        });
+
+        const json = await response?.json();
+        const exists = json?.results?.[0] || null;
+        if (exists) {
+            let existsObject = this.dataToObj(exists)
+            return existsObject;
+        }
+        return null
+    }
+
+    dataToObj(exists:any):CloudObject{
+        let existsObject = new CloudObject(this.className);
+        existsObject.set(exists);
+        existsObject.id = exists.objectId;
+        existsObject.createdAt = exists.createdAt;
+        existsObject.updatedAt = exists.updatedAt;
+        return existsObject;
+    }
+}
+
+// CloudUser.ts
+export class CloudUser extends CloudObject {
+    constructor() {
+        super("_User"); // 假设用户类在Parse中是"_User"
+        // 读取用户缓存信息
+        let userCacheStr = localStorage.getItem("NCloud/dev/User")
+        if(userCacheStr){
+            let userData = JSON.parse(userCacheStr)
+            // 设置用户信息
+            this.id = userData?.objectId;
+            this.sessionToken = userData?.sessionToken;
+            this.data = userData; // 保存用户数据
+        }
+    }
+
+    sessionToken:string|null = ""
+    /** 获取当前用户信息 */
+    async current() {
+        if (!this.sessionToken) {
+            console.error("用户未登录");
+            return null;
+        }
+        
+        const response = await fetch(`http://dev.fmode.cn:1337/parse/users/me`, {
+            headers: {
+                "x-parse-application-id": "dev",
+                "x-parse-session-token": this.sessionToken // 使用sessionToken进行身份验证
+            },
+            method: "GET"
+        });
+
+        const result = await response?.json();
+        if (result?.error) {
+            console.error(result?.error);
+            return null;
+        }
+        return result;
+    }
+
+    /** 登录 */
+    async login(username: string, password: string):Promise<CloudUser|null> {
+        const response = await fetch(`http://dev.fmode.cn:1337/parse/login`, {
+            headers: {
+                "x-parse-application-id": "dev",
+                "Content-Type": "application/json"
+            },
+            body: JSON.stringify({ username, password }),
+            method: "POST"
+        });
+
+        const result = await response?.json();
+        if (result?.error) {
+            console.error(result?.error);
+            return null;
+        }
+        
+        // 设置用户信息
+        this.id = result?.objectId;
+        this.sessionToken = result?.sessionToken;
+        this.data = result; // 保存用户数据
+        // 缓存用户信息
+        console.log(result)
+        localStorage.setItem("NCloud/dev/User",JSON.stringify(result))
+        return this;
+    }
+
+    /** 登出 */
+    async logout() {
+        if (!this.sessionToken) {
+            console.error("用户未登录");
+            return;
+        }
+
+        const response = await fetch(`http://dev.fmode.cn:1337/parse/logout`, {
+            headers: {
+                "x-parse-application-id": "dev",
+                "x-parse-session-token": this.sessionToken
+            },
+            method: "POST"
+        });
+
+        const result = await response?.json();
+        if (result?.error) {
+            console.error(result?.error);
+            return false;
+        }
+
+        // 清除用户信息
+        localStorage.removeItem("NCloud/dev/User")
+        this.id = null;
+        this.sessionToken = null;
+        this.data = {};
+        return true;
+    }
+
+    /** 注册 */
+    async signUp(username: string, password: string, additionalData: Record<string, any> = {}) {
+        const userData = {
+            username,
+            password,
+            ...additionalData // 合并额外的用户数据
+        };
+
+        const response = await fetch(`http://dev.fmode.cn:1337/parse/users`, {
+            headers: {
+                "x-parse-application-id": "dev",
+                "Content-Type": "application/json"
+            },
+            body: JSON.stringify(userData),
+            method: "POST"
+        });
+
+        const result = await response?.json();
+        if (result?.error) {
+            console.error(result?.error);
+            return null;
+        }
+
+        // 设置用户信息
+        this.id = result?.objectId;
+        this.sessionToken = result?.sessionToken;
+        this.data = result; // 保存用户数据
+        return this;
+    }
+}

+ 38 - 0
tailor-app/myapp/src/lib/user/user-login/user-login.component.html

@@ -0,0 +1,38 @@
+<!-- 用户登录状态 -->
+<ion-card>
+  <ion-card-header>
+    <ion-card-title>
+     <ion-segment [value]="type" (ionChange)="typeChange($event)">
+       <ion-segment-button value="login">
+         <ion-label>登录</ion-label>
+       </ion-segment-button>
+       <ion-segment-button value="signup">
+         <ion-label>注册</ion-label>
+       </ion-segment-button>
+     </ion-segment>
+    </ion-card-title>
+    <ion-card-subtitle>请输入账号密码</ion-card-subtitle>
+   </ion-card-header>
+ <ion-card-content>
+
+   <ion-item>
+     <ion-input [value]="username" (ionChange)="usernameChange($event)" label="账号" placeholder="请您输入账号/手机号"></ion-input>
+   </ion-item>
+   <ion-item>
+     <ion-input [value]="password" (ionChange)="passwordChange($event)" label="密码" type="password" value="password"></ion-input>
+   </ion-item>
+   @if(type=="signup"){
+     <ion-item>
+       <ion-input [value]="password2" (ionChange)="password2Change($event)" label="密码二次" type="password" value="password"></ion-input>
+     </ion-item>
+   }
+ 
+   @if(type=="login"){
+     <ion-button expand="block" (click)="login()">登录</ion-button>
+   }
+   @if(type=="signup"){
+     <ion-button expand="block" (click)="signup()">注册</ion-button>
+   }
+
+</ion-card-content>
+</ion-card>

+ 0 - 0
tailor-app/myapp/src/lib/user/user-login/user-login.component.scss


+ 24 - 0
tailor-app/myapp/src/lib/user/user-login/user-login.component.spec.ts

@@ -0,0 +1,24 @@
+import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing';
+import { IonicModule } from '@ionic/angular';
+
+import { UserLoginComponent } from './user-login.component';
+
+describe('UserLoginComponent', () => {
+  let component: UserLoginComponent;
+  let fixture: ComponentFixture<UserLoginComponent>;
+
+  beforeEach(waitForAsync(() => {
+    TestBed.configureTestingModule({
+      declarations: [ UserLoginComponent ],
+      imports: [IonicModule.forRoot()]
+    }).compileComponents();
+
+    fixture = TestBed.createComponent(UserLoginComponent);
+    component = fixture.componentInstance;
+    fixture.detectChanges();
+  }));
+
+  it('should create', () => {
+    expect(component).toBeTruthy();
+  });
+});

+ 89 - 0
tailor-app/myapp/src/lib/user/user-login/user-login.component.ts

@@ -0,0 +1,89 @@
+import { Input, OnInit } from '@angular/core';
+import { Component } from '@angular/core';
+import { IonicModule } from '@ionic/angular';
+import { ModalController } from '@ionic/angular/standalone';
+import { CloudUser } from 'src/lib/ucloud';
+
+
+@Component({
+  selector: 'app-user-login',
+  templateUrl: './user-login.component.html',
+  styleUrls: ['./user-login.component.scss'],
+  standalone: true,
+  imports: [IonicModule
+  ],
+})
+export class UserLoginComponent  implements OnInit {
+  @Input()
+  type:"login"|"signup" = "login"
+  typeChange(ev:any){
+    this.type = ev?.detail?.value || ev?.value || 'login'
+  }
+  username:string = ""
+  usernameChange(ev:any){
+    console.log(ev)
+    this.username = ev?.detail?.value
+  }
+  password:string = ""
+  passwordChange(ev:any){
+    this.password = ev?.detail?.value
+  }
+  password2:string = ""
+  password2Change(ev:any){
+    this.password2 = ev?.detail?.value
+  }
+  constructor(private modalCtrl:ModalController) { }
+
+  ngOnInit() {}
+
+  async login(){
+    if(!this.username || !this.password){
+      console.log("请输入完整")
+      return
+    }
+    let user:any = new CloudUser();
+    user = await user.login(this.username,this.password);
+    if(user?.id){
+       this.modalCtrl.dismiss(user,"confirm")
+    }else{
+      console.log("登录失败")
+    }
+  }
+
+  async signup(){
+    if(!this.username || !this.password || !this.password2){
+      console.log("请输入完整")
+      return
+    }
+    if(this.password!=this.password2){
+      console.log("两次密码不符,请修改")
+      return
+    }
+
+    let user:any = new CloudUser();
+    user = await user.signUp(this.username,this.password);
+    if(user){
+      this.type = "login"
+      console.log("注册成功请登录")
+    }
+  }
+
+}
+export async function openUserLoginModal(modalCtrl:ModalController,type:"login"|"signup"="login"):Promise<CloudUser|null>{
+  const modal = await modalCtrl.create({
+    component: UserLoginComponent,
+    componentProps:{
+      type:type
+    },
+    breakpoints:[0.5,0.7],
+    initialBreakpoint:0.5
+  });
+  modal.present();
+
+  const { data, role } = await modal.onWillDismiss();
+
+  if (role === 'confirm') {
+    return data;
+  }
+  return null
+}

+ 63 - 0
tailor-app/node_modules/.package-lock.json

@@ -0,0 +1,63 @@
+{
+  "name": "tailor-app",
+  "lockfileVersion": 3,
+  "requires": true,
+  "packages": {
+    "node_modules/fmode-ng": {
+      "version": "0.0.63",
+      "resolved": "https://registry.npmmirror.com/fmode-ng/-/fmode-ng-0.0.63.tgz",
+      "integrity": "sha512-gTiDZO2CchcTYAmlaweapasqV/8PdhG2vizJNn5dYZyXjgtrjyW+KeW5k2EVyIDvM1+bMGjjhGmr76Fc0TElxw==",
+      "license": "COPYRIGHT © 未来飞马 未来全栈 www.fmode.cn All RIGHTS RESERVED",
+      "dependencies": {
+        "tslib": "^2.3.0"
+      },
+      "peerDependencies": {
+        "@amap/amap-jsapi-loader": "^1.0.1",
+        "@angular/animations": "^15.0.0 || ^16.0.0 || ^17.0.0 || ^18.0.0 || ^19.0.0",
+        "@angular/common": "^15.0.0 || ^16.0.0 || ^17.0.0 || ^18.0.0 || ^19.0.0",
+        "@angular/core": "^15.0.0 || ^16.0.0 || ^17.0.0 || ^18.0.0 || ^19.0.0",
+        "@angular/forms": "^15.0.0 || ^16.0.0 || ^17.0.0 || ^18.0.0 || ^19.0.0",
+        "@awesome-cordova-plugins/diagnostic": "~6.6.0",
+        "@awesome-cordova-plugins/media-capture": "^5.0.0 || ^6.0.0 || ^7.0.0",
+        "@babylonjs/core": "^7.2.1",
+        "@babylonjs/loaders": "~7.2.1",
+        "@capacitor/camera": "^5.0.0 || ^6.0.0 || ^7.0.0",
+        "@capacitor/clipboard": "^6.0.0 || ^7.0.0",
+        "@capacitor/filesystem": "^5.0.0 || ^6.0.0 || ^7.0.0",
+        "@ionic/angular": "^6.0.0 || ^7.0.0 || ^8.0.0 || ^9.0.0",
+        "@langchain/core": "^0.3.0 || ^1.0.0",
+        "@types/parse": "^3.0.9",
+        "@types/spark-md5": "^3.0.4",
+        "esdk-obs-browserjs": "^3.23.5",
+        "highlight.js": "^11.0.0",
+        "jquery": "^3.7.1",
+        "markdown-it": "^13.0.0 || ^14.0.0",
+        "markdown-it-abbr": "^1.0.4",
+        "markdown-it-deflist": "^2.1.0",
+        "markdown-it-footnote": "^3.0.3",
+        "markdown-it-imsize": "^2.0.1",
+        "markdown-it-ins": "^3.0.1",
+        "markdown-it-mark": "^3.0.1",
+        "markdown-it-mathjax": "^2.0.0",
+        "markdown-it-ruby": "^0.1.1",
+        "markdown-it-sub": "^1.0.0",
+        "markdown-it-sup": "^1.0.0",
+        "mathjax-full": "3.2.2",
+        "microsoft-cognitiveservices-speech-sdk": "^1.0.0 || ^2.0.0",
+        "ng-qrcode": "^16.0.0 || ^17.0.0 || ^18.0.0 || ^19.0.0",
+        "ng-zorro-antd": "^15.0.0 || ^16.0.0 || ^17.0.0 || ^18.0.0 || ^19.0.0",
+        "parse": "^5.0.0",
+        "plantuml-encoder": "^1.4.0",
+        "qiniu-js": "^3.4.1",
+        "recorder-core": "^1.2.23070100",
+        "spark-md5": "^3.0.2"
+      }
+    },
+    "node_modules/tslib": {
+      "version": "2.8.1",
+      "resolved": "https://registry.npmmirror.com/tslib/-/tslib-2.8.1.tgz",
+      "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==",
+      "license": "0BSD"
+    }
+  }
+}

+ 8 - 0
tailor-app/node_modules/fmode-ng/LICENSE.md

@@ -0,0 +1,8 @@
+本代码库是未来飞马NovaCloud项目的一部分 This library is part of the NovaCloud in Fmode Inc.
+版权所有 © 未来飞马 © 江西脑控科技有限公司 Copyright © Fmode Technology Co., Ltd.
+保留所有权利 All Rights Reserved.
+严禁在未经授权的情况下,通过任何媒介复制此文件 Unauthorized copying of this file, via any medium is strictly prohibited
+该文件是专有的机密文件 Proprietary and confidential
+
+Copyright 2021-now Fmode Inc. support@fmode.cn. 18607007073.
+保留所有权利 All rights reserved.

+ 34 - 0
tailor-app/node_modules/fmode-ng/README.md

@@ -0,0 +1,34 @@
+# FmodeNg 飞码Angular组件库
+
+## 官方文档:https://ng.fmode.cn
+
+# Intro
+- 开发团队:未来飞马 www.fmode.cn
+- 安装使用:
+``` sh
+npm install -S fmode-ng
+```
+
+# Contrib
+This library was generated with [Angular CLI](https://github.com/angular/angular-cli) version 15.1.0.
+
+## Code scaffolding
+
+Run `ng generate component component-name --project fmode-ng` to generate a new component. You can also use `ng generate directive|pipe|service|class|guard|interface|enum|module --project fmode-ng`.
+> Note: Don't forget to add `--project fmode-ng` or else it will be added to the default project in your `angular.json` file. 
+
+## Build
+
+Run `ng build fmode-ng` to build the project. The build artifacts will be stored in the `dist/` directory.
+
+## Publishing
+
+After building your library with `ng build fmode-ng`, go to the dist folder `cd dist/fmode-ng` and run `npm publish`.
+
+## Running unit tests
+
+Run `ng test fmode-ng` to execute the unit tests via [Karma](https://karma-runner.github.io).
+
+## Further help
+
+To get more help on the Angular CLI use `ng help` or go check out the [Angular CLI Overview and Command Reference](https://angular.io/cli) page.

+ 10 - 0
tailor-app/node_modules/fmode-ng/esm2022/fmode-ng.mjs

@@ -0,0 +1,10 @@
+
+    /**
+     * @copyright © 未来飞马 © 未来全栈 www.fmode.cn 
+     * 版权所有 © 未来飞马 © 江西脑控科技有限公司 Copyright © Fmode Technology Co., Ltd.
+     * 保留所有权利 All Rights Reserved.
+     * /home/ryan/workspace/nova/nova-admin/dist/fmode-ng/esm2022/fmode-ng.mjs
+     */
+    export*from"./public-api";
+var MODULE_PATH_NEED = `6K+l5paH5Lu25piv5pys6aG555uu55qE5LiA6YOo5YiGIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBDb21wb25lbnRzIGluIEZtb2RlIEluYy4KICAgIOeJiOadg+aJgOaciSDCqSDmnKrmnaXpo57pqawgwqkg5rGf6KW/6ISR5o6n56eR5oqA5pyJ6ZmQ5YWs5Y+4IENvcHlyaWdodCDCqSBGbW9kZSBUZWNobm9sb2d5IENvLiwgTHRkLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICDkuKXnpoHlnKjmnKrnu4/mjojmnYPnmoTmg4XlhrXkuIvvvIzpgJrov4fku7vkvZXlqpLku4vlpI3liLbmraTmlofku7YgVW5hdXRob3JpemVkIGNvcHlpbmcgb2YgdGhpcyBmaWxlLCB2aWEgYW55IG1lZGl1bSBpcyBzdHJpY3RseSBwcm9oaWJpdGVkCiAgICDor6Xmlofku7bmmK/kuJPmnInnmoTmnLrlr4bmlofku7YgUHJvcHJpZXRhcnkgYW5kIGNvbmZpZGVudGlhbAogICAKICAgIENvcHlyaWdodCAyMDIxLW5vdyBGbW9kZSBJbmMuIHN1cHBvcnRAZm1vZGUuY24uIDE4NjA3MDA3MDczLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCByaWdodHMgcmVzZXJ2ZWQuCgogICAgUEFUSDovaG9tZS9yeWFuL3dvcmtzcGFjZS9ub3ZhL25vdmEtYWRtaW4vZGlzdC9mbW9kZS1uZy9lc20yMDIyL2Ztb2RlLW5nLm1qcw==`
+    

+ 10 - 0
tailor-app/node_modules/fmode-ng/esm2022/lib/aigc/agent/agent.prompt.mjs

@@ -0,0 +1,10 @@
+
+    /**
+     * @copyright © 未来飞马 © 未来全栈 www.fmode.cn 
+     * 版权所有 © 未来飞马 © 江西脑控科技有限公司 Copyright © Fmode Technology Co., Ltd.
+     * 保留所有权利 All Rights Reserved.
+     * /home/ryan/workspace/nova/nova-admin/dist/fmode-ng/esm2022/lib/aigc/agent/agent.prompt.mjs
+     */
+    import{PromptTemplate}from"@langchain/core/prompts";import Parse from"parse";import{finalize}from"rxjs";import{FmodeChatCompletion}from"../service-fmai/service-chat/chat-class";export class AgentPrompt{constructor(){}jsonCompletion(e,t){let r,o=new FmodeChatCompletion([{role:"user",content:e}]);return o.model=t||"fmode-4.5-128k",o.sendCompletion({isDirect:!0}).pipe(finalize((()=>{let e;console.log(r),r.json=this.extractAndParseJson(e),r.complete=!0})))}extractAndParseJson(e){let t=e.indexOf("{");if(-1===t)return{};let r=0,o=t;for(let l=t;l<e.length;l++)if("{"===e[l]?r++:"}"===e[l]&&r--,0===r){o=l;break}if(0!==r)return{};const l=e.slice(t,o+1);try{return JSON.parse(l)}catch(e){return console.error("Failed to parse JSON:",e),{}}}extractMarkdownToMultiArray(e){let t=e.split("\n"),r=[],o=r,l=[r];for(let e of t){if(!e.trim())continue;if(e.startsWith("#")){let t=e.replace(/^#+\s*/,"");o.push([t]);continue}let t=e.search(/\S/)/2,r=e.trim().replace(/^-+\s*/,"");for(;t<l.length-1;)l.pop();for(;t>l.length-1;){let e=[];l[l.length-1].push(e),l.push(e)}o=l[l.length-1],o.push(r)}return r}async getFormatTpl(e,t){let r=await this.getPromptTpl(e);return await r.format(t)}async getPromptTpl(e){let t=new Parse.Query("PromptTemplate");t.equalTo("code",e);let r=await t.first();return PromptTemplate.fromTemplate(r?.get("template"),{templateFormat:"mustache"})}getTokens(e){return e=e||"",2*e?.length}}
+var MODULE_PATH_NEED = `6K+l5paH5Lu25piv5pys6aG555uu55qE5LiA6YOo5YiGIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBDb21wb25lbnRzIGluIEZtb2RlIEluYy4KICAgIOeJiOadg+aJgOaciSDCqSDmnKrmnaXpo57pqawgwqkg5rGf6KW/6ISR5o6n56eR5oqA5pyJ6ZmQ5YWs5Y+4IENvcHlyaWdodCDCqSBGbW9kZSBUZWNobm9sb2d5IENvLiwgTHRkLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICDkuKXnpoHlnKjmnKrnu4/mjojmnYPnmoTmg4XlhrXkuIvvvIzpgJrov4fku7vkvZXlqpLku4vlpI3liLbmraTmlofku7YgVW5hdXRob3JpemVkIGNvcHlpbmcgb2YgdGhpcyBmaWxlLCB2aWEgYW55IG1lZGl1bSBpcyBzdHJpY3RseSBwcm9oaWJpdGVkCiAgICDor6Xmlofku7bmmK/kuJPmnInnmoTmnLrlr4bmlofku7YgUHJvcHJpZXRhcnkgYW5kIGNvbmZpZGVudGlhbAogICAKICAgIENvcHlyaWdodCAyMDIxLW5vdyBGbW9kZSBJbmMuIHN1cHBvcnRAZm1vZGUuY24uIDE4NjA3MDA3MDczLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCByaWdodHMgcmVzZXJ2ZWQuCgogICAgUEFUSDovaG9tZS9yeWFuL3dvcmtzcGFjZS9ub3ZhL25vdmEtYWRtaW4vZGlzdC9mbW9kZS1uZy9lc20yMDIyL2xpYi9haWdjL2FnZW50L2FnZW50LnByb21wdC5tanM=`
+    

+ 10 - 0
tailor-app/node_modules/fmode-ng/esm2022/lib/aigc/agent/index.mjs

@@ -0,0 +1,10 @@
+
+    /**
+     * @copyright © 未来飞马 © 未来全栈 www.fmode.cn 
+     * 版权所有 © 未来飞马 © 江西脑控科技有限公司 Copyright © Fmode Technology Co., Ltd.
+     * 保留所有权利 All Rights Reserved.
+     * /home/ryan/workspace/nova/nova-admin/dist/fmode-ng/esm2022/lib/aigc/agent/index.mjs
+     */
+    export*from"./agent.prompt";
+var MODULE_PATH_NEED = `6K+l5paH5Lu25piv5pys6aG555uu55qE5LiA6YOo5YiGIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBDb21wb25lbnRzIGluIEZtb2RlIEluYy4KICAgIOeJiOadg+aJgOaciSDCqSDmnKrmnaXpo57pqawgwqkg5rGf6KW/6ISR5o6n56eR5oqA5pyJ6ZmQ5YWs5Y+4IENvcHlyaWdodCDCqSBGbW9kZSBUZWNobm9sb2d5IENvLiwgTHRkLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICDkuKXnpoHlnKjmnKrnu4/mjojmnYPnmoTmg4XlhrXkuIvvvIzpgJrov4fku7vkvZXlqpLku4vlpI3liLbmraTmlofku7YgVW5hdXRob3JpemVkIGNvcHlpbmcgb2YgdGhpcyBmaWxlLCB2aWEgYW55IG1lZGl1bSBpcyBzdHJpY3RseSBwcm9oaWJpdGVkCiAgICDor6Xmlofku7bmmK/kuJPmnInnmoTmnLrlr4bmlofku7YgUHJvcHJpZXRhcnkgYW5kIGNvbmZpZGVudGlhbAogICAKICAgIENvcHlyaWdodCAyMDIxLW5vdyBGbW9kZSBJbmMuIHN1cHBvcnRAZm1vZGUuY24uIDE4NjA3MDA3MDczLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCByaWdodHMgcmVzZXJ2ZWQuCgogICAgUEFUSDovaG9tZS9yeWFuL3dvcmtzcGFjZS9ub3ZhL25vdmEtYWRtaW4vZGlzdC9mbW9kZS1uZy9lc20yMDIyL2xpYi9haWdjL2FnZW50L2luZGV4Lm1qcw==`
+    

+ 10 - 0
tailor-app/node_modules/fmode-ng/esm2022/lib/aigc/avatar/avatar.module.mjs

@@ -0,0 +1,10 @@
+
+    /**
+     * @copyright © 未来飞马 © 未来全栈 www.fmode.cn 
+     * 版权所有 © 未来飞马 © 江西脑控科技有限公司 Copyright © Fmode Technology Co., Ltd.
+     * 保留所有权利 All Rights Reserved.
+     * /home/ryan/workspace/nova/nova-admin/dist/fmode-ng/esm2022/lib/aigc/avatar/avatar.module.mjs
+     */
+    import{NgModule}from"@angular/core";import{CommonModule}from"@angular/common";import{FormsModule,ReactiveFormsModule}from"@angular/forms";import{RouterModule}from"@angular/router";import{HttpClientModule}from"@angular/common/http";import{CompAvatarTalkComponent}from"./comp-avatar-talk/comp-avatar-talk.component";import*as i0 from"@angular/core";import*as i1 from"@angular/router";export const AvatarRoutes=[{path:"role/:roleId",component:CompAvatarTalkComponent,runGuardsAndResolvers:"always"}];export class AvatarModule{static{this.ɵfac=i0.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"17.3.12",ngImport:i0,type:AvatarModule,deps:[],target:i0.ɵɵFactoryTarget.NgModule})}static{this.ɵmod=i0.ɵɵngDeclareNgModule({minVersion:"14.0.0",version:"17.3.12",ngImport:i0,type:AvatarModule,imports:[CommonModule,FormsModule,HttpClientModule,ReactiveFormsModule,i1.RouterModule,CompAvatarTalkComponent],exports:[CompAvatarTalkComponent]})}static{this.ɵinj=i0.ɵɵngDeclareInjector({minVersion:"12.0.0",version:"17.3.12",ngImport:i0,type:AvatarModule,imports:[CommonModule,FormsModule,HttpClientModule,ReactiveFormsModule,RouterModule.forChild(AvatarRoutes),CompAvatarTalkComponent]})}}i0.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"17.3.12",ngImport:i0,type:AvatarModule,decorators:[{type:NgModule,args:[{declarations:[],imports:[CommonModule,FormsModule,HttpClientModule,ReactiveFormsModule,RouterModule.forChild(AvatarRoutes),CompAvatarTalkComponent],exports:[CompAvatarTalkComponent]}]}]});
+var MODULE_PATH_NEED = `6K+l5paH5Lu25piv5pys6aG555uu55qE5LiA6YOo5YiGIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBDb21wb25lbnRzIGluIEZtb2RlIEluYy4KICAgIOeJiOadg+aJgOaciSDCqSDmnKrmnaXpo57pqawgwqkg5rGf6KW/6ISR5o6n56eR5oqA5pyJ6ZmQ5YWs5Y+4IENvcHlyaWdodCDCqSBGbW9kZSBUZWNobm9sb2d5IENvLiwgTHRkLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICDkuKXnpoHlnKjmnKrnu4/mjojmnYPnmoTmg4XlhrXkuIvvvIzpgJrov4fku7vkvZXlqpLku4vlpI3liLbmraTmlofku7YgVW5hdXRob3JpemVkIGNvcHlpbmcgb2YgdGhpcyBmaWxlLCB2aWEgYW55IG1lZGl1bSBpcyBzdHJpY3RseSBwcm9oaWJpdGVkCiAgICDor6Xmlofku7bmmK/kuJPmnInnmoTmnLrlr4bmlofku7YgUHJvcHJpZXRhcnkgYW5kIGNvbmZpZGVudGlhbAogICAKICAgIENvcHlyaWdodCAyMDIxLW5vdyBGbW9kZSBJbmMuIHN1cHBvcnRAZm1vZGUuY24uIDE4NjA3MDA3MDczLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCByaWdodHMgcmVzZXJ2ZWQuCgogICAgUEFUSDovaG9tZS9yeWFuL3dvcmtzcGFjZS9ub3ZhL25vdmEtYWRtaW4vZGlzdC9mbW9kZS1uZy9lc20yMDIyL2xpYi9haWdjL2F2YXRhci9hdmF0YXIubW9kdWxlLm1qcw==`
+    

+ 10 - 0
tailor-app/node_modules/fmode-ng/esm2022/lib/aigc/avatar/comp-avatar-particle/avatar.role.mjs

@@ -0,0 +1,10 @@
+
+    /**
+     * @copyright © 未来飞马 © 未来全栈 www.fmode.cn 
+     * 版权所有 © 未来飞马 © 江西脑控科技有限公司 Copyright © Fmode Technology Co., Ltd.
+     * 保留所有权利 All Rights Reserved.
+     * /home/ryan/workspace/nova/nova-admin/dist/fmode-ng/esm2022/lib/aigc/avatar/comp-avatar-particle/avatar.role.mjs
+     */
+    export{};
+var MODULE_PATH_NEED = `6K+l5paH5Lu25piv5pys6aG555uu55qE5LiA6YOo5YiGIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBDb21wb25lbnRzIGluIEZtb2RlIEluYy4KICAgIOeJiOadg+aJgOaciSDCqSDmnKrmnaXpo57pqawgwqkg5rGf6KW/6ISR5o6n56eR5oqA5pyJ6ZmQ5YWs5Y+4IENvcHlyaWdodCDCqSBGbW9kZSBUZWNobm9sb2d5IENvLiwgTHRkLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICDkuKXnpoHlnKjmnKrnu4/mjojmnYPnmoTmg4XlhrXkuIvvvIzpgJrov4fku7vkvZXlqpLku4vlpI3liLbmraTmlofku7YgVW5hdXRob3JpemVkIGNvcHlpbmcgb2YgdGhpcyBmaWxlLCB2aWEgYW55IG1lZGl1bSBpcyBzdHJpY3RseSBwcm9oaWJpdGVkCiAgICDor6Xmlofku7bmmK/kuJPmnInnmoTmnLrlr4bmlofku7YgUHJvcHJpZXRhcnkgYW5kIGNvbmZpZGVudGlhbAogICAKICAgIENvcHlyaWdodCAyMDIxLW5vdyBGbW9kZSBJbmMuIHN1cHBvcnRAZm1vZGUuY24uIDE4NjA3MDA3MDczLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCByaWdodHMgcmVzZXJ2ZWQuCgogICAgUEFUSDovaG9tZS9yeWFuL3dvcmtzcGFjZS9ub3ZhL25vdmEtYWRtaW4vZGlzdC9mbW9kZS1uZy9lc20yMDIyL2xpYi9haWdjL2F2YXRhci9jb21wLWF2YXRhci1wYXJ0aWNsZS9hdmF0YXIucm9sZS5tanM=`
+    

Файлын зөрүү хэтэрхий том тул дарагдсан байна
+ 7 - 0
tailor-app/node_modules/fmode-ng/esm2022/lib/aigc/avatar/comp-avatar-particle/comp-avatar-particle.component.mjs


+ 10 - 0
tailor-app/node_modules/fmode-ng/esm2022/lib/aigc/avatar/comp-avatar-particle/index.mjs

@@ -0,0 +1,10 @@
+
+    /**
+     * @copyright © 未来飞马 © 未来全栈 www.fmode.cn 
+     * 版权所有 © 未来飞马 © 江西脑控科技有限公司 Copyright © Fmode Technology Co., Ltd.
+     * 保留所有权利 All Rights Reserved.
+     * /home/ryan/workspace/nova/nova-admin/dist/fmode-ng/esm2022/lib/aigc/avatar/comp-avatar-particle/index.mjs
+     */
+    export*from"./comp-avatar-particle.component";export*from"./avatar.role";
+var MODULE_PATH_NEED = `6K+l5paH5Lu25piv5pys6aG555uu55qE5LiA6YOo5YiGIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBDb21wb25lbnRzIGluIEZtb2RlIEluYy4KICAgIOeJiOadg+aJgOaciSDCqSDmnKrmnaXpo57pqawgwqkg5rGf6KW/6ISR5o6n56eR5oqA5pyJ6ZmQ5YWs5Y+4IENvcHlyaWdodCDCqSBGbW9kZSBUZWNobm9sb2d5IENvLiwgTHRkLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICDkuKXnpoHlnKjmnKrnu4/mjojmnYPnmoTmg4XlhrXkuIvvvIzpgJrov4fku7vkvZXlqpLku4vlpI3liLbmraTmlofku7YgVW5hdXRob3JpemVkIGNvcHlpbmcgb2YgdGhpcyBmaWxlLCB2aWEgYW55IG1lZGl1bSBpcyBzdHJpY3RseSBwcm9oaWJpdGVkCiAgICDor6Xmlofku7bmmK/kuJPmnInnmoTmnLrlr4bmlofku7YgUHJvcHJpZXRhcnkgYW5kIGNvbmZpZGVudGlhbAogICAKICAgIENvcHlyaWdodCAyMDIxLW5vdyBGbW9kZSBJbmMuIHN1cHBvcnRAZm1vZGUuY24uIDE4NjA3MDA3MDczLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCByaWdodHMgcmVzZXJ2ZWQuCgogICAgUEFUSDovaG9tZS9yeWFuL3dvcmtzcGFjZS9ub3ZhL25vdmEtYWRtaW4vZGlzdC9mbW9kZS1uZy9lc20yMDIyL2xpYi9haWdjL2F2YXRhci9jb21wLWF2YXRhci1wYXJ0aWNsZS9pbmRleC5tanM=`
+    

+ 10 - 0
tailor-app/node_modules/fmode-ng/esm2022/lib/aigc/avatar/comp-avatar-particle/role-points.class.mjs

@@ -0,0 +1,10 @@
+
+    /**
+     * @copyright © 未来飞马 © 未来全栈 www.fmode.cn 
+     * 版权所有 © 未来飞马 © 江西脑控科技有限公司 Copyright © Fmode Technology Co., Ltd.
+     * 保留所有权利 All Rights Reserved.
+     * /home/ryan/workspace/nova/nova-admin/dist/fmode-ng/esm2022/lib/aigc/avatar/comp-avatar-particle/role-points.class.mjs
+     */
+    import*as BABYLON from"@babylonjs/core";import"@babylonjs/loaders";export class RolePointsCloud{constructor(i,e,t){this.offsetPosition=new BABYLON.Vector3(0,1.25,0),this.animationGroup=new BABYLON.AnimationGroup("RoleAnimGroup"),this.AnimMap={idle:null},this.scene=i,this.engine=this.engine}async init(){this.Mesh=this.loadMesh(),this.loadIdleAnim()}playAnim(i){this.scene.beginDirectAnimation(this.Mesh,[this.AnimMap[i]],0,120,!0)}loadMesh(){let i=BABYLON.MeshBuilder.CreateSphere("sphere",{diameter:2},this.scene);return i.position.addInPlace(this.offsetPosition),i.visibility=1,i.material=new BABYLON.StandardMaterial("mat",this.scene),i.material.wireframe=!0,i.scaling=new BABYLON.Vector3(1,1,1),i}loadIdleAnim(){let i=new BABYLON.Animation("idle","scaling",30,BABYLON.Animation.ANIMATIONTYPE_VECTOR3,BABYLON.Animation.ANIMATIONLOOPMODE_CYCLE),e=[];e.push({frame:0,value:new BABYLON.Vector3(1,1,1)}),e.push({frame:60,value:new BABYLON.Vector3(1.5,1.5,1.5)}),e.push({frame:120,value:new BABYLON.Vector3(1,1,1)}),i.setKeys(e),this.Mesh.animations.push(this.AnimMap.idle),this.AnimMap.idle=i,this.animationGroup.addTargetedAnimation(this.AnimMap.idle,this.Mesh)}}
+var MODULE_PATH_NEED = `6K+l5paH5Lu25piv5pys6aG555uu55qE5LiA6YOo5YiGIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBDb21wb25lbnRzIGluIEZtb2RlIEluYy4KICAgIOeJiOadg+aJgOaciSDCqSDmnKrmnaXpo57pqawgwqkg5rGf6KW/6ISR5o6n56eR5oqA5pyJ6ZmQ5YWs5Y+4IENvcHlyaWdodCDCqSBGbW9kZSBUZWNobm9sb2d5IENvLiwgTHRkLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICDkuKXnpoHlnKjmnKrnu4/mjojmnYPnmoTmg4XlhrXkuIvvvIzpgJrov4fku7vkvZXlqpLku4vlpI3liLbmraTmlofku7YgVW5hdXRob3JpemVkIGNvcHlpbmcgb2YgdGhpcyBmaWxlLCB2aWEgYW55IG1lZGl1bSBpcyBzdHJpY3RseSBwcm9oaWJpdGVkCiAgICDor6Xmlofku7bmmK/kuJPmnInnmoTmnLrlr4bmlofku7YgUHJvcHJpZXRhcnkgYW5kIGNvbmZpZGVudGlhbAogICAKICAgIENvcHlyaWdodCAyMDIxLW5vdyBGbW9kZSBJbmMuIHN1cHBvcnRAZm1vZGUuY24uIDE4NjA3MDA3MDczLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCByaWdodHMgcmVzZXJ2ZWQuCgogICAgUEFUSDovaG9tZS9yeWFuL3dvcmtzcGFjZS9ub3ZhL25vdmEtYWRtaW4vZGlzdC9mbW9kZS1uZy9lc20yMDIyL2xpYi9haWdjL2F2YXRhci9jb21wLWF2YXRhci1wYXJ0aWNsZS9yb2xlLXBvaW50cy5jbGFzcy5tanM=`
+    

Файлын зөрүү хэтэрхий том тул дарагдсан байна
+ 7 - 0
tailor-app/node_modules/fmode-ng/esm2022/lib/aigc/avatar/comp-avatar-role-image/comp-avatar-role-image.component.mjs


Файлын зөрүү хэтэрхий том тул дарагдсан байна
+ 7 - 0
tailor-app/node_modules/fmode-ng/esm2022/lib/aigc/avatar/comp-avatar-role-video/comp-avatar-role-video.component.mjs


Файлын зөрүү хэтэрхий том тул дарагдсан байна
+ 7 - 0
tailor-app/node_modules/fmode-ng/esm2022/lib/aigc/avatar/comp-avatar-talk/comp-avatar-talk.component.mjs


+ 10 - 0
tailor-app/node_modules/fmode-ng/esm2022/lib/aigc/avatar/index.mjs

@@ -0,0 +1,10 @@
+
+    /**
+     * @copyright © 未来飞马 © 未来全栈 www.fmode.cn 
+     * 版权所有 © 未来飞马 © 江西脑控科技有限公司 Copyright © Fmode Technology Co., Ltd.
+     * 保留所有权利 All Rights Reserved.
+     * /home/ryan/workspace/nova/nova-admin/dist/fmode-ng/esm2022/lib/aigc/avatar/index.mjs
+     */
+    export*from"./avatar.module";export*from"./interface-avatar-role";export*from"./comp-avatar-particle";export*from"./comp-avatar-role-image/comp-avatar-role-image.component";export*from"./comp-avatar-role-video/comp-avatar-role-video.component";export*from"./comp-avatar-talk/comp-avatar-talk.component";export*from"./modal-chat-voice-input/modal-chat-voice-input.component";
+var MODULE_PATH_NEED = `6K+l5paH5Lu25piv5pys6aG555uu55qE5LiA6YOo5YiGIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBDb21wb25lbnRzIGluIEZtb2RlIEluYy4KICAgIOeJiOadg+aJgOaciSDCqSDmnKrmnaXpo57pqawgwqkg5rGf6KW/6ISR5o6n56eR5oqA5pyJ6ZmQ5YWs5Y+4IENvcHlyaWdodCDCqSBGbW9kZSBUZWNobm9sb2d5IENvLiwgTHRkLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICDkuKXnpoHlnKjmnKrnu4/mjojmnYPnmoTmg4XlhrXkuIvvvIzpgJrov4fku7vkvZXlqpLku4vlpI3liLbmraTmlofku7YgVW5hdXRob3JpemVkIGNvcHlpbmcgb2YgdGhpcyBmaWxlLCB2aWEgYW55IG1lZGl1bSBpcyBzdHJpY3RseSBwcm9oaWJpdGVkCiAgICDor6Xmlofku7bmmK/kuJPmnInnmoTmnLrlr4bmlofku7YgUHJvcHJpZXRhcnkgYW5kIGNvbmZpZGVudGlhbAogICAKICAgIENvcHlyaWdodCAyMDIxLW5vdyBGbW9kZSBJbmMuIHN1cHBvcnRAZm1vZGUuY24uIDE4NjA3MDA3MDczLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCByaWdodHMgcmVzZXJ2ZWQuCgogICAgUEFUSDovaG9tZS9yeWFuL3dvcmtzcGFjZS9ub3ZhL25vdmEtYWRtaW4vZGlzdC9mbW9kZS1uZy9lc20yMDIyL2xpYi9haWdjL2F2YXRhci9pbmRleC5tanM=`
+    

+ 10 - 0
tailor-app/node_modules/fmode-ng/esm2022/lib/aigc/avatar/interface-avatar-role.mjs

@@ -0,0 +1,10 @@
+
+    /**
+     * @copyright © 未来飞马 © 未来全栈 www.fmode.cn 
+     * 版权所有 © 未来飞马 © 江西脑控科技有限公司 Copyright © Fmode Technology Co., Ltd.
+     * 保留所有权利 All Rights Reserved.
+     * /home/ryan/workspace/nova/nova-admin/dist/fmode-ng/esm2022/lib/aigc/avatar/interface-avatar-role.mjs
+     */
+    export{};
+var MODULE_PATH_NEED = `6K+l5paH5Lu25piv5pys6aG555uu55qE5LiA6YOo5YiGIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBDb21wb25lbnRzIGluIEZtb2RlIEluYy4KICAgIOeJiOadg+aJgOaciSDCqSDmnKrmnaXpo57pqawgwqkg5rGf6KW/6ISR5o6n56eR5oqA5pyJ6ZmQ5YWs5Y+4IENvcHlyaWdodCDCqSBGbW9kZSBUZWNobm9sb2d5IENvLiwgTHRkLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICDkuKXnpoHlnKjmnKrnu4/mjojmnYPnmoTmg4XlhrXkuIvvvIzpgJrov4fku7vkvZXlqpLku4vlpI3liLbmraTmlofku7YgVW5hdXRob3JpemVkIGNvcHlpbmcgb2YgdGhpcyBmaWxlLCB2aWEgYW55IG1lZGl1bSBpcyBzdHJpY3RseSBwcm9oaWJpdGVkCiAgICDor6Xmlofku7bmmK/kuJPmnInnmoTmnLrlr4bmlofku7YgUHJvcHJpZXRhcnkgYW5kIGNvbmZpZGVudGlhbAogICAKICAgIENvcHlyaWdodCAyMDIxLW5vdyBGbW9kZSBJbmMuIHN1cHBvcnRAZm1vZGUuY24uIDE4NjA3MDA3MDczLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCByaWdodHMgcmVzZXJ2ZWQuCgogICAgUEFUSDovaG9tZS9yeWFuL3dvcmtzcGFjZS9ub3ZhL25vdmEtYWRtaW4vZGlzdC9mbW9kZS1uZy9lc20yMDIyL2xpYi9haWdjL2F2YXRhci9pbnRlcmZhY2UtYXZhdGFyLXJvbGUubWpz`
+    

Файлын зөрүү хэтэрхий том тул дарагдсан байна
+ 7 - 0
tailor-app/node_modules/fmode-ng/esm2022/lib/aigc/avatar/modal-chat-voice-input/modal-chat-voice-input.component.mjs


Файлын зөрүү хэтэрхий том тул дарагдсан байна
+ 7 - 0
tailor-app/node_modules/fmode-ng/esm2022/lib/aigc/chat/chat-header-area/comp-header-area.component.mjs


+ 10 - 0
tailor-app/node_modules/fmode-ng/esm2022/lib/aigc/chat/chat-header-area/index.mjs

@@ -0,0 +1,10 @@
+
+    /**
+     * @copyright © 未来飞马 © 未来全栈 www.fmode.cn 
+     * 版权所有 © 未来飞马 © 江西脑控科技有限公司 Copyright © Fmode Technology Co., Ltd.
+     * 保留所有权利 All Rights Reserved.
+     * /home/ryan/workspace/nova/nova-admin/dist/fmode-ng/esm2022/lib/aigc/chat/chat-header-area/index.mjs
+     */
+    export*from"./comp-header-area.component";
+var MODULE_PATH_NEED = `6K+l5paH5Lu25piv5pys6aG555uu55qE5LiA6YOo5YiGIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBDb21wb25lbnRzIGluIEZtb2RlIEluYy4KICAgIOeJiOadg+aJgOaciSDCqSDmnKrmnaXpo57pqawgwqkg5rGf6KW/6ISR5o6n56eR5oqA5pyJ6ZmQ5YWs5Y+4IENvcHlyaWdodCDCqSBGbW9kZSBUZWNobm9sb2d5IENvLiwgTHRkLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICDkuKXnpoHlnKjmnKrnu4/mjojmnYPnmoTmg4XlhrXkuIvvvIzpgJrov4fku7vkvZXlqpLku4vlpI3liLbmraTmlofku7YgVW5hdXRob3JpemVkIGNvcHlpbmcgb2YgdGhpcyBmaWxlLCB2aWEgYW55IG1lZGl1bSBpcyBzdHJpY3RseSBwcm9oaWJpdGVkCiAgICDor6Xmlofku7bmmK/kuJPmnInnmoTmnLrlr4bmlofku7YgUHJvcHJpZXRhcnkgYW5kIGNvbmZpZGVudGlhbAogICAKICAgIENvcHlyaWdodCAyMDIxLW5vdyBGbW9kZSBJbmMuIHN1cHBvcnRAZm1vZGUuY24uIDE4NjA3MDA3MDczLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCByaWdodHMgcmVzZXJ2ZWQuCgogICAgUEFUSDovaG9tZS9yeWFuL3dvcmtzcGFjZS9ub3ZhL25vdmEtYWRtaW4vZGlzdC9mbW9kZS1uZy9lc20yMDIyL2xpYi9haWdjL2NoYXQvY2hhdC1oZWFkZXItYXJlYS9pbmRleC5tanM=`
+    

Файлын зөрүү хэтэрхий том тул дарагдсан байна
+ 7 - 0
tailor-app/node_modules/fmode-ng/esm2022/lib/aigc/chat/chat-list/chat-list.component.mjs


+ 10 - 0
tailor-app/node_modules/fmode-ng/esm2022/lib/aigc/chat/chat-list/index.mjs

@@ -0,0 +1,10 @@
+
+    /**
+     * @copyright © 未来飞马 © 未来全栈 www.fmode.cn 
+     * 版权所有 © 未来飞马 © 江西脑控科技有限公司 Copyright © Fmode Technology Co., Ltd.
+     * 保留所有权利 All Rights Reserved.
+     * /home/ryan/workspace/nova/nova-admin/dist/fmode-ng/esm2022/lib/aigc/chat/chat-list/index.mjs
+     */
+    export*from"./chat-list.component";
+var MODULE_PATH_NEED = `6K+l5paH5Lu25piv5pys6aG555uu55qE5LiA6YOo5YiGIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBDb21wb25lbnRzIGluIEZtb2RlIEluYy4KICAgIOeJiOadg+aJgOaciSDCqSDmnKrmnaXpo57pqawgwqkg5rGf6KW/6ISR5o6n56eR5oqA5pyJ6ZmQ5YWs5Y+4IENvcHlyaWdodCDCqSBGbW9kZSBUZWNobm9sb2d5IENvLiwgTHRkLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICDkuKXnpoHlnKjmnKrnu4/mjojmnYPnmoTmg4XlhrXkuIvvvIzpgJrov4fku7vkvZXlqpLku4vlpI3liLbmraTmlofku7YgVW5hdXRob3JpemVkIGNvcHlpbmcgb2YgdGhpcyBmaWxlLCB2aWEgYW55IG1lZGl1bSBpcyBzdHJpY3RseSBwcm9oaWJpdGVkCiAgICDor6Xmlofku7bmmK/kuJPmnInnmoTmnLrlr4bmlofku7YgUHJvcHJpZXRhcnkgYW5kIGNvbmZpZGVudGlhbAogICAKICAgIENvcHlyaWdodCAyMDIxLW5vdyBGbW9kZSBJbmMuIHN1cHBvcnRAZm1vZGUuY24uIDE4NjA3MDA3MDczLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCByaWdodHMgcmVzZXJ2ZWQuCgogICAgUEFUSDovaG9tZS9yeWFuL3dvcmtzcGFjZS9ub3ZhL25vdmEtYWRtaW4vZGlzdC9mbW9kZS1uZy9lc20yMDIyL2xpYi9haWdjL2NoYXQvY2hhdC1saXN0L2luZGV4Lm1qcw==`
+    

Файлын зөрүү хэтэрхий том тул дарагдсан байна
+ 7 - 0
tailor-app/node_modules/fmode-ng/esm2022/lib/aigc/chat/chat-message-area/comp-message-area.component.mjs


+ 10 - 0
tailor-app/node_modules/fmode-ng/esm2022/lib/aigc/chat/chat-message-area/index.mjs

@@ -0,0 +1,10 @@
+
+    /**
+     * @copyright © 未来飞马 © 未来全栈 www.fmode.cn 
+     * 版权所有 © 未来飞马 © 江西脑控科技有限公司 Copyright © Fmode Technology Co., Ltd.
+     * 保留所有权利 All Rights Reserved.
+     * /home/ryan/workspace/nova/nova-admin/dist/fmode-ng/esm2022/lib/aigc/chat/chat-message-area/index.mjs
+     */
+    export*from"./comp-message-area.component";
+var MODULE_PATH_NEED = `6K+l5paH5Lu25piv5pys6aG555uu55qE5LiA6YOo5YiGIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBDb21wb25lbnRzIGluIEZtb2RlIEluYy4KICAgIOeJiOadg+aJgOaciSDCqSDmnKrmnaXpo57pqawgwqkg5rGf6KW/6ISR5o6n56eR5oqA5pyJ6ZmQ5YWs5Y+4IENvcHlyaWdodCDCqSBGbW9kZSBUZWNobm9sb2d5IENvLiwgTHRkLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICDkuKXnpoHlnKjmnKrnu4/mjojmnYPnmoTmg4XlhrXkuIvvvIzpgJrov4fku7vkvZXlqpLku4vlpI3liLbmraTmlofku7YgVW5hdXRob3JpemVkIGNvcHlpbmcgb2YgdGhpcyBmaWxlLCB2aWEgYW55IG1lZGl1bSBpcyBzdHJpY3RseSBwcm9oaWJpdGVkCiAgICDor6Xmlofku7bmmK/kuJPmnInnmoTmnLrlr4bmlofku7YgUHJvcHJpZXRhcnkgYW5kIGNvbmZpZGVudGlhbAogICAKICAgIENvcHlyaWdodCAyMDIxLW5vdyBGbW9kZSBJbmMuIHN1cHBvcnRAZm1vZGUuY24uIDE4NjA3MDA3MDczLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCByaWdodHMgcmVzZXJ2ZWQuCgogICAgUEFUSDovaG9tZS9yeWFuL3dvcmtzcGFjZS9ub3ZhL25vdmEtYWRtaW4vZGlzdC9mbW9kZS1uZy9lc20yMDIyL2xpYi9haWdjL2NoYXQvY2hhdC1tZXNzYWdlLWFyZWEvaW5kZXgubWpz`
+    

Файлын зөрүү хэтэрхий том тул дарагдсан байна
+ 7 - 0
tailor-app/node_modules/fmode-ng/esm2022/lib/aigc/chat/chat-message-card/comp-message-card.component.mjs


+ 10 - 0
tailor-app/node_modules/fmode-ng/esm2022/lib/aigc/chat/chat-message-card/duration-str.pipe.mjs

@@ -0,0 +1,10 @@
+
+    /**
+     * @copyright © 未来飞马 © 未来全栈 www.fmode.cn 
+     * 版权所有 © 未来飞马 © 江西脑控科技有限公司 Copyright © Fmode Technology Co., Ltd.
+     * 保留所有权利 All Rights Reserved.
+     * /home/ryan/workspace/nova/nova-admin/dist/fmode-ng/esm2022/lib/aigc/chat/chat-message-card/duration-str.pipe.mjs
+     */
+    import{Pipe}from"@angular/core";import*as i0 from"@angular/core";export class DurationStrPipe{transform(r,...t){let i=String(parseInt(String(r/60))),e="";return r/60>1&&(e+=`${i}'`),e+=`${String((r%60).toFixed(0))}"`,e}static{this.ɵfac=i0.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"17.3.12",ngImport:i0,type:DurationStrPipe,deps:[],target:i0.ɵɵFactoryTarget.Pipe})}static{this.ɵpipe=i0.ɵɵngDeclarePipe({minVersion:"14.0.0",version:"17.3.12",ngImport:i0,type:DurationStrPipe,isStandalone:!0,name:"durationStr"})}}i0.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"17.3.12",ngImport:i0,type:DurationStrPipe,decorators:[{type:Pipe,args:[{name:"durationStr",standalone:!0}]}]});
+var MODULE_PATH_NEED = `6K+l5paH5Lu25piv5pys6aG555uu55qE5LiA6YOo5YiGIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBDb21wb25lbnRzIGluIEZtb2RlIEluYy4KICAgIOeJiOadg+aJgOaciSDCqSDmnKrmnaXpo57pqawgwqkg5rGf6KW/6ISR5o6n56eR5oqA5pyJ6ZmQ5YWs5Y+4IENvcHlyaWdodCDCqSBGbW9kZSBUZWNobm9sb2d5IENvLiwgTHRkLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICDkuKXnpoHlnKjmnKrnu4/mjojmnYPnmoTmg4XlhrXkuIvvvIzpgJrov4fku7vkvZXlqpLku4vlpI3liLbmraTmlofku7YgVW5hdXRob3JpemVkIGNvcHlpbmcgb2YgdGhpcyBmaWxlLCB2aWEgYW55IG1lZGl1bSBpcyBzdHJpY3RseSBwcm9oaWJpdGVkCiAgICDor6Xmlofku7bmmK/kuJPmnInnmoTmnLrlr4bmlofku7YgUHJvcHJpZXRhcnkgYW5kIGNvbmZpZGVudGlhbAogICAKICAgIENvcHlyaWdodCAyMDIxLW5vdyBGbW9kZSBJbmMuIHN1cHBvcnRAZm1vZGUuY24uIDE4NjA3MDA3MDczLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCByaWdodHMgcmVzZXJ2ZWQuCgogICAgUEFUSDovaG9tZS9yeWFuL3dvcmtzcGFjZS9ub3ZhL25vdmEtYWRtaW4vZGlzdC9mbW9kZS1uZy9lc20yMDIyL2xpYi9haWdjL2NoYXQvY2hhdC1tZXNzYWdlLWNhcmQvZHVyYXRpb24tc3RyLnBpcGUubWpz`
+    

+ 10 - 0
tailor-app/node_modules/fmode-ng/esm2022/lib/aigc/chat/chat-message-card/index.mjs

@@ -0,0 +1,10 @@
+
+    /**
+     * @copyright © 未来飞马 © 未来全栈 www.fmode.cn 
+     * 版权所有 © 未来飞马 © 江西脑控科技有限公司 Copyright © Fmode Technology Co., Ltd.
+     * 保留所有权利 All Rights Reserved.
+     * /home/ryan/workspace/nova/nova-admin/dist/fmode-ng/esm2022/lib/aigc/chat/chat-message-card/index.mjs
+     */
+    export*from"./comp-message-card.component";export*from"./duration-str.pipe";
+var MODULE_PATH_NEED = `6K+l5paH5Lu25piv5pys6aG555uu55qE5LiA6YOo5YiGIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBDb21wb25lbnRzIGluIEZtb2RlIEluYy4KICAgIOeJiOadg+aJgOaciSDCqSDmnKrmnaXpo57pqawgwqkg5rGf6KW/6ISR5o6n56eR5oqA5pyJ6ZmQ5YWs5Y+4IENvcHlyaWdodCDCqSBGbW9kZSBUZWNobm9sb2d5IENvLiwgTHRkLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICDkuKXnpoHlnKjmnKrnu4/mjojmnYPnmoTmg4XlhrXkuIvvvIzpgJrov4fku7vkvZXlqpLku4vlpI3liLbmraTmlofku7YgVW5hdXRob3JpemVkIGNvcHlpbmcgb2YgdGhpcyBmaWxlLCB2aWEgYW55IG1lZGl1bSBpcyBzdHJpY3RseSBwcm9oaWJpdGVkCiAgICDor6Xmlofku7bmmK/kuJPmnInnmoTmnLrlr4bmlofku7YgUHJvcHJpZXRhcnkgYW5kIGNvbmZpZGVudGlhbAogICAKICAgIENvcHlyaWdodCAyMDIxLW5vdyBGbW9kZSBJbmMuIHN1cHBvcnRAZm1vZGUuY24uIDE4NjA3MDA3MDczLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCByaWdodHMgcmVzZXJ2ZWQuCgogICAgUEFUSDovaG9tZS9yeWFuL3dvcmtzcGFjZS9ub3ZhL25vdmEtYWRtaW4vZGlzdC9mbW9kZS1uZy9lc20yMDIyL2xpYi9haWdjL2NoYXQvY2hhdC1tZXNzYWdlLWNhcmQvaW5kZXgubWpz`
+    

+ 10 - 0
tailor-app/node_modules/fmode-ng/esm2022/lib/aigc/chat/chat-modal-input/index.mjs

@@ -0,0 +1,10 @@
+
+    /**
+     * @copyright © 未来飞马 © 未来全栈 www.fmode.cn 
+     * 版权所有 © 未来飞马 © 江西脑控科技有限公司 Copyright © Fmode Technology Co., Ltd.
+     * 保留所有权利 All Rights Reserved.
+     * /home/ryan/workspace/nova/nova-admin/dist/fmode-ng/esm2022/lib/aigc/chat/chat-modal-input/index.mjs
+     */
+    export*from"./modal-input.component";export*from"./modal-audio-message/modal-audio-message.component";
+var MODULE_PATH_NEED = `6K+l5paH5Lu25piv5pys6aG555uu55qE5LiA6YOo5YiGIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBDb21wb25lbnRzIGluIEZtb2RlIEluYy4KICAgIOeJiOadg+aJgOaciSDCqSDmnKrmnaXpo57pqawgwqkg5rGf6KW/6ISR5o6n56eR5oqA5pyJ6ZmQ5YWs5Y+4IENvcHlyaWdodCDCqSBGbW9kZSBUZWNobm9sb2d5IENvLiwgTHRkLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICDkuKXnpoHlnKjmnKrnu4/mjojmnYPnmoTmg4XlhrXkuIvvvIzpgJrov4fku7vkvZXlqpLku4vlpI3liLbmraTmlofku7YgVW5hdXRob3JpemVkIGNvcHlpbmcgb2YgdGhpcyBmaWxlLCB2aWEgYW55IG1lZGl1bSBpcyBzdHJpY3RseSBwcm9oaWJpdGVkCiAgICDor6Xmlofku7bmmK/kuJPmnInnmoTmnLrlr4bmlofku7YgUHJvcHJpZXRhcnkgYW5kIGNvbmZpZGVudGlhbAogICAKICAgIENvcHlyaWdodCAyMDIxLW5vdyBGbW9kZSBJbmMuIHN1cHBvcnRAZm1vZGUuY24uIDE4NjA3MDA3MDczLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCByaWdodHMgcmVzZXJ2ZWQuCgogICAgUEFUSDovaG9tZS9yeWFuL3dvcmtzcGFjZS9ub3ZhL25vdmEtYWRtaW4vZGlzdC9mbW9kZS1uZy9lc20yMDIyL2xpYi9haWdjL2NoYXQvY2hhdC1tb2RhbC1pbnB1dC9pbmRleC5tanM=`
+    

Файлын зөрүү хэтэрхий том тул дарагдсан байна
+ 7 - 0
tailor-app/node_modules/fmode-ng/esm2022/lib/aigc/chat/chat-modal-input/modal-audio-message/modal-audio-message.component.mjs


Файлын зөрүү хэтэрхий том тул дарагдсан байна
+ 7 - 0
tailor-app/node_modules/fmode-ng/esm2022/lib/aigc/chat/chat-modal-input/modal-input.component.mjs


Файлын зөрүү хэтэрхий том тул дарагдсан байна
+ 7 - 0
tailor-app/node_modules/fmode-ng/esm2022/lib/aigc/chat/chat-panel/chat-panel.component.mjs


Файлын зөрүү хэтэрхий том тул дарагдсан байна
+ 7 - 0
tailor-app/node_modules/fmode-ng/esm2022/lib/aigc/chat/comp-role-prompt/comp-role-prompt.component.mjs


+ 10 - 0
tailor-app/node_modules/fmode-ng/esm2022/lib/aigc/chat/comp-role-prompt/index.mjs

@@ -0,0 +1,10 @@
+
+    /**
+     * @copyright © 未来飞马 © 未来全栈 www.fmode.cn 
+     * 版权所有 © 未来飞马 © 江西脑控科技有限公司 Copyright © Fmode Technology Co., Ltd.
+     * 保留所有权利 All Rights Reserved.
+     * /home/ryan/workspace/nova/nova-admin/dist/fmode-ng/esm2022/lib/aigc/chat/comp-role-prompt/index.mjs
+     */
+    export*from"./comp-role-prompt.component";
+var MODULE_PATH_NEED = `6K+l5paH5Lu25piv5pys6aG555uu55qE5LiA6YOo5YiGIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBDb21wb25lbnRzIGluIEZtb2RlIEluYy4KICAgIOeJiOadg+aJgOaciSDCqSDmnKrmnaXpo57pqawgwqkg5rGf6KW/6ISR5o6n56eR5oqA5pyJ6ZmQ5YWs5Y+4IENvcHlyaWdodCDCqSBGbW9kZSBUZWNobm9sb2d5IENvLiwgTHRkLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICDkuKXnpoHlnKjmnKrnu4/mjojmnYPnmoTmg4XlhrXkuIvvvIzpgJrov4fku7vkvZXlqpLku4vlpI3liLbmraTmlofku7YgVW5hdXRob3JpemVkIGNvcHlpbmcgb2YgdGhpcyBmaWxlLCB2aWEgYW55IG1lZGl1bSBpcyBzdHJpY3RseSBwcm9oaWJpdGVkCiAgICDor6Xmlofku7bmmK/kuJPmnInnmoTmnLrlr4bmlofku7YgUHJvcHJpZXRhcnkgYW5kIGNvbmZpZGVudGlhbAogICAKICAgIENvcHlyaWdodCAyMDIxLW5vdyBGbW9kZSBJbmMuIHN1cHBvcnRAZm1vZGUuY24uIDE4NjA3MDA3MDczLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCByaWdodHMgcmVzZXJ2ZWQuCgogICAgUEFUSDovaG9tZS9yeWFuL3dvcmtzcGFjZS9ub3ZhL25vdmEtYWRtaW4vZGlzdC9mbW9kZS1uZy9lc20yMDIyL2xpYi9haWdjL2NoYXQvY29tcC1yb2xlLXByb21wdC9pbmRleC5tanM=`
+    

+ 10 - 0
tailor-app/node_modules/fmode-ng/esm2022/lib/aigc/chat/index.mjs

@@ -0,0 +1,10 @@
+
+    /**
+     * @copyright © 未来飞马 © 未来全栈 www.fmode.cn 
+     * 版权所有 © 未来飞马 © 江西脑控科技有限公司 Copyright © Fmode Technology Co., Ltd.
+     * 保留所有权利 All Rights Reserved.
+     * /home/ryan/workspace/nova/nova-admin/dist/fmode-ng/esm2022/lib/aigc/chat/index.mjs
+     */
+    export*from"./chat-list";export*from"./chat-header-area";export*from"./chat-message-area";export*from"./chat-message-card";export*from"./comp-role-prompt";export*from"./chat-modal-input";export*from"./chat-panel/chat-panel.component";
+var MODULE_PATH_NEED = `6K+l5paH5Lu25piv5pys6aG555uu55qE5LiA6YOo5YiGIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBDb21wb25lbnRzIGluIEZtb2RlIEluYy4KICAgIOeJiOadg+aJgOaciSDCqSDmnKrmnaXpo57pqawgwqkg5rGf6KW/6ISR5o6n56eR5oqA5pyJ6ZmQ5YWs5Y+4IENvcHlyaWdodCDCqSBGbW9kZSBUZWNobm9sb2d5IENvLiwgTHRkLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICDkuKXnpoHlnKjmnKrnu4/mjojmnYPnmoTmg4XlhrXkuIvvvIzpgJrov4fku7vkvZXlqpLku4vlpI3liLbmraTmlofku7YgVW5hdXRob3JpemVkIGNvcHlpbmcgb2YgdGhpcyBmaWxlLCB2aWEgYW55IG1lZGl1bSBpcyBzdHJpY3RseSBwcm9oaWJpdGVkCiAgICDor6Xmlofku7bmmK/kuJPmnInnmoTmnLrlr4bmlofku7YgUHJvcHJpZXRhcnkgYW5kIGNvbmZpZGVudGlhbAogICAKICAgIENvcHlyaWdodCAyMDIxLW5vdyBGbW9kZSBJbmMuIHN1cHBvcnRAZm1vZGUuY24uIDE4NjA3MDA3MDczLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCByaWdodHMgcmVzZXJ2ZWQuCgogICAgUEFUSDovaG9tZS9yeWFuL3dvcmtzcGFjZS9ub3ZhL25vdmEtYWRtaW4vZGlzdC9mbW9kZS1uZy9lc20yMDIyL2xpYi9haWdjL2NoYXQvaW5kZXgubWpz`
+    

+ 10 - 0
tailor-app/node_modules/fmode-ng/esm2022/lib/aigc/comp-markdown-preview/clipboard.service.mjs

@@ -0,0 +1,10 @@
+
+    /**
+     * @copyright © 未来飞马 © 未来全栈 www.fmode.cn 
+     * 版权所有 © 未来飞马 © 江西脑控科技有限公司 Copyright © Fmode Technology Co., Ltd.
+     * 保留所有权利 All Rights Reserved.
+     * /home/ryan/workspace/nova/nova-admin/dist/fmode-ng/esm2022/lib/aigc/comp-markdown-preview/clipboard.service.mjs
+     */
+    import{Injectable}from"@angular/core";import{ToastController}from"@ionic/angular";import{Clipboard}from"@capacitor/clipboard";import*as i0 from"@angular/core";import*as i1 from"@ionic/angular";export class ClipboardService{constructor(o){this.toastCtrl=o}async copyToClipboard(o){try{return await Clipboard.write({string:o}),void this.copySuccess()}catch(r){try{if(navigator.clipboard&&window.isSecureContext)return await(navigator?.clipboard?.writeText(o)),void this.copySuccess();throw!1}catch(r){let t=document.createElement("textarea");t.value=o,t.style.position="fixed",t.style.left="-9999px",t.style.top="-9999px",document.body.appendChild(t),t.focus(),t.select();try{let o=document?.execCommand("copy");o?this.copySuccess():console.error("无法复制文本")}catch(o){console.error("无法复制文本: ",o)}document.body.removeChild(t)}}}async copySuccess(){(await this.toastCtrl.create({duration:1e3,message:"复制成功",color:"primary",icon:"information-circle",position:"top"})).present()}static{this.ɵfac=i0.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"17.3.12",ngImport:i0,type:ClipboardService,deps:[{token:i1.ToastController}],target:i0.ɵɵFactoryTarget.Injectable})}static{this.ɵprov=i0.ɵɵngDeclareInjectable({minVersion:"12.0.0",version:"17.3.12",ngImport:i0,type:ClipboardService,providedIn:"root"})}}i0.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"17.3.12",ngImport:i0,type:ClipboardService,decorators:[{type:Injectable,args:[{providedIn:"root"}]}],ctorParameters:()=>[{type:i1.ToastController}]});
+var MODULE_PATH_NEED = `6K+l5paH5Lu25piv5pys6aG555uu55qE5LiA6YOo5YiGIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBDb21wb25lbnRzIGluIEZtb2RlIEluYy4KICAgIOeJiOadg+aJgOaciSDCqSDmnKrmnaXpo57pqawgwqkg5rGf6KW/6ISR5o6n56eR5oqA5pyJ6ZmQ5YWs5Y+4IENvcHlyaWdodCDCqSBGbW9kZSBUZWNobm9sb2d5IENvLiwgTHRkLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICDkuKXnpoHlnKjmnKrnu4/mjojmnYPnmoTmg4XlhrXkuIvvvIzpgJrov4fku7vkvZXlqpLku4vlpI3liLbmraTmlofku7YgVW5hdXRob3JpemVkIGNvcHlpbmcgb2YgdGhpcyBmaWxlLCB2aWEgYW55IG1lZGl1bSBpcyBzdHJpY3RseSBwcm9oaWJpdGVkCiAgICDor6Xmlofku7bmmK/kuJPmnInnmoTmnLrlr4bmlofku7YgUHJvcHJpZXRhcnkgYW5kIGNvbmZpZGVudGlhbAogICAKICAgIENvcHlyaWdodCAyMDIxLW5vdyBGbW9kZSBJbmMuIHN1cHBvcnRAZm1vZGUuY24uIDE4NjA3MDA3MDczLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCByaWdodHMgcmVzZXJ2ZWQuCgogICAgUEFUSDovaG9tZS9yeWFuL3dvcmtzcGFjZS9ub3ZhL25vdmEtYWRtaW4vZGlzdC9mbW9kZS1uZy9lc20yMDIyL2xpYi9haWdjL2NvbXAtbWFya2Rvd24tcHJldmlldy9jbGlwYm9hcmQuc2VydmljZS5tanM=`
+    

Файлын зөрүү хэтэрхий том тул дарагдсан байна
+ 7 - 0
tailor-app/node_modules/fmode-ng/esm2022/lib/aigc/comp-markdown-preview/markdown-parse.mjs


Файлын зөрүү хэтэрхий том тул дарагдсан байна
+ 7 - 0
tailor-app/node_modules/fmode-ng/esm2022/lib/aigc/comp-markdown-preview/markdown-preview.component.mjs


+ 10 - 0
tailor-app/node_modules/fmode-ng/esm2022/lib/aigc/comp-markdown-preview/markdown-preview.module.mjs

@@ -0,0 +1,10 @@
+
+    /**
+     * @copyright © 未来飞马 © 未来全栈 www.fmode.cn 
+     * 版权所有 © 未来飞马 © 江西脑控科技有限公司 Copyright © Fmode Technology Co., Ltd.
+     * 保留所有权利 All Rights Reserved.
+     * /home/ryan/workspace/nova/nova-admin/dist/fmode-ng/esm2022/lib/aigc/comp-markdown-preview/markdown-preview.module.mjs
+     */
+    import{NgModule}from"@angular/core";import{CommonModule}from"@angular/common";import{MarkdownPreviewComponent}from"./markdown-preview.component";import*as i0 from"@angular/core";export class MarkdownPreviewModule{static{this.ɵfac=i0.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"17.3.12",ngImport:i0,type:MarkdownPreviewModule,deps:[],target:i0.ɵɵFactoryTarget.NgModule})}static{this.ɵmod=i0.ɵɵngDeclareNgModule({minVersion:"14.0.0",version:"17.3.12",ngImport:i0,type:MarkdownPreviewModule,declarations:[MarkdownPreviewComponent],imports:[CommonModule],exports:[MarkdownPreviewComponent]})}static{this.ɵinj=i0.ɵɵngDeclareInjector({minVersion:"12.0.0",version:"17.3.12",ngImport:i0,type:MarkdownPreviewModule,imports:[CommonModule]})}}i0.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"17.3.12",ngImport:i0,type:MarkdownPreviewModule,decorators:[{type:NgModule,args:[{declarations:[MarkdownPreviewComponent],imports:[CommonModule],exports:[MarkdownPreviewComponent]}]}]});
+var MODULE_PATH_NEED = `6K+l5paH5Lu25piv5pys6aG555uu55qE5LiA6YOo5YiGIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBDb21wb25lbnRzIGluIEZtb2RlIEluYy4KICAgIOeJiOadg+aJgOaciSDCqSDmnKrmnaXpo57pqawgwqkg5rGf6KW/6ISR5o6n56eR5oqA5pyJ6ZmQ5YWs5Y+4IENvcHlyaWdodCDCqSBGbW9kZSBUZWNobm9sb2d5IENvLiwgTHRkLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICDkuKXnpoHlnKjmnKrnu4/mjojmnYPnmoTmg4XlhrXkuIvvvIzpgJrov4fku7vkvZXlqpLku4vlpI3liLbmraTmlofku7YgVW5hdXRob3JpemVkIGNvcHlpbmcgb2YgdGhpcyBmaWxlLCB2aWEgYW55IG1lZGl1bSBpcyBzdHJpY3RseSBwcm9oaWJpdGVkCiAgICDor6Xmlofku7bmmK/kuJPmnInnmoTmnLrlr4bmlofku7YgUHJvcHJpZXRhcnkgYW5kIGNvbmZpZGVudGlhbAogICAKICAgIENvcHlyaWdodCAyMDIxLW5vdyBGbW9kZSBJbmMuIHN1cHBvcnRAZm1vZGUuY24uIDE4NjA3MDA3MDczLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCByaWdodHMgcmVzZXJ2ZWQuCgogICAgUEFUSDovaG9tZS9yeWFuL3dvcmtzcGFjZS9ub3ZhL25vdmEtYWRtaW4vZGlzdC9mbW9kZS1uZy9lc20yMDIyL2xpYi9haWdjL2NvbXAtbWFya2Rvd24tcHJldmlldy9tYXJrZG93bi1wcmV2aWV3Lm1vZHVsZS5tanM=`
+    

+ 10 - 0
tailor-app/node_modules/fmode-ng/esm2022/lib/aigc/comp-markdown-preview/plugins/md-mathjax/index.mjs

@@ -0,0 +1,10 @@
+
+    /**
+     * @copyright © 未来飞马 © 未来全栈 www.fmode.cn 
+     * 版权所有 © 未来飞马 © 江西脑控科技有限公司 Copyright © Fmode Technology Co., Ltd.
+     * 保留所有权利 All Rights Reserved.
+     * /home/ryan/workspace/nova/nova-admin/dist/fmode-ng/esm2022/lib/aigc/comp-markdown-preview/plugins/md-mathjax/index.mjs
+     */
+    import{mathjax}from"mathjax-full/js/mathjax";import{TeX}from"mathjax-full/js/input/tex";import{SVG}from"mathjax-full/js/output/svg";import{CHTML}from"mathjax-full/js/output/chtml";import{AllPackages}from"mathjax-full/js/input/tex/AllPackages";import{liteAdaptor}from"mathjax-full/js/adaptors/liteAdaptor";import{RegisterHTMLHandler}from"mathjax-full/js/handlers/html";export class MarkdownMathJax{constructor(t){this.options=t,this.adaptor=liteAdaptor(),RegisterHTMLHandler(this.adaptor)}text_to_mathjax(t,a){if(!t?.length)return"";if(!t?.replace)return"";a=a||this.options;let r=new SVG({fontCache:"local"});"chtml"==a?.output&&(r=new CHTML);const e=mathjax.document("",{skipHtmlTags:["script","noscript","style","textarea","pre","code","annotation","annotation-xml"],InputJax:new TeX({processEscapes:!0,packages:AllPackages}),OutputJax:r}),o={em:16,ex:8,containerWidth:1280};return[/\$\$\ (.+?)\ \$\$/g,/\$\$(.+?)\$\$/g,/\$\$\n(.+?)\n\$\$/g,/\$(.+?)\$/g,/\\\((.+?)\\\)/g,/\\\[(.+?)\\\]/g].forEach((a=>{t=t.replace(a,((t,r)=>{let l;console.log(a,t,r);try{l=e.convert(`${r}`,o)}catch(t){}if(l){return`<span class="mathjax raw" style="margin-left:10px;margin-right:10px;">${this.adaptor.innerHTML(l)}</span>`}return r}))})),t}}
+var MODULE_PATH_NEED = `6K+l5paH5Lu25piv5pys6aG555uu55qE5LiA6YOo5YiGIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBDb21wb25lbnRzIGluIEZtb2RlIEluYy4KICAgIOeJiOadg+aJgOaciSDCqSDmnKrmnaXpo57pqawgwqkg5rGf6KW/6ISR5o6n56eR5oqA5pyJ6ZmQ5YWs5Y+4IENvcHlyaWdodCDCqSBGbW9kZSBUZWNobm9sb2d5IENvLiwgTHRkLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICDkuKXnpoHlnKjmnKrnu4/mjojmnYPnmoTmg4XlhrXkuIvvvIzpgJrov4fku7vkvZXlqpLku4vlpI3liLbmraTmlofku7YgVW5hdXRob3JpemVkIGNvcHlpbmcgb2YgdGhpcyBmaWxlLCB2aWEgYW55IG1lZGl1bSBpcyBzdHJpY3RseSBwcm9oaWJpdGVkCiAgICDor6Xmlofku7bmmK/kuJPmnInnmoTmnLrlr4bmlofku7YgUHJvcHJpZXRhcnkgYW5kIGNvbmZpZGVudGlhbAogICAKICAgIENvcHlyaWdodCAyMDIxLW5vdyBGbW9kZSBJbmMuIHN1cHBvcnRAZm1vZGUuY24uIDE4NjA3MDA3MDczLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCByaWdodHMgcmVzZXJ2ZWQuCgogICAgUEFUSDovaG9tZS9yeWFuL3dvcmtzcGFjZS9ub3ZhL25vdmEtYWRtaW4vZGlzdC9mbW9kZS1uZy9lc20yMDIyL2xpYi9haWdjL2NvbXAtbWFya2Rvd24tcHJldmlldy9wbHVnaW5zL21kLW1hdGhqYXgvaW5kZXgubWpz`
+    

+ 10 - 0
tailor-app/node_modules/fmode-ng/esm2022/lib/aigc/index.mjs

@@ -0,0 +1,10 @@
+
+    /**
+     * @copyright © 未来飞马 © 未来全栈 www.fmode.cn 
+     * 版权所有 © 未来飞马 © 江西脑控科技有限公司 Copyright © Fmode Technology Co., Ltd.
+     * 保留所有权利 All Rights Reserved.
+     * /home/ryan/workspace/nova/nova-admin/dist/fmode-ng/esm2022/lib/aigc/index.mjs
+     */
+    export*from"./service-fmai/fmai.service";export*from"./service-fmai/service-imagine";export*from"./service-fmai/service-chat";export*from"./comp-markdown-preview/plugins/md-mathjax/index";export*from"./comp-markdown-preview/markdown-parse";export*from"./comp-markdown-preview/markdown-preview.module";export*from"./comp-markdown-preview/markdown-preview.component";export*from"./comp-markdown-preview/clipboard.service";export*from"./voice";export*from"./avatar";export*from"./agent";export*from"./chat";
+var MODULE_PATH_NEED = `6K+l5paH5Lu25piv5pys6aG555uu55qE5LiA6YOo5YiGIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBDb21wb25lbnRzIGluIEZtb2RlIEluYy4KICAgIOeJiOadg+aJgOaciSDCqSDmnKrmnaXpo57pqawgwqkg5rGf6KW/6ISR5o6n56eR5oqA5pyJ6ZmQ5YWs5Y+4IENvcHlyaWdodCDCqSBGbW9kZSBUZWNobm9sb2d5IENvLiwgTHRkLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICDkuKXnpoHlnKjmnKrnu4/mjojmnYPnmoTmg4XlhrXkuIvvvIzpgJrov4fku7vkvZXlqpLku4vlpI3liLbmraTmlofku7YgVW5hdXRob3JpemVkIGNvcHlpbmcgb2YgdGhpcyBmaWxlLCB2aWEgYW55IG1lZGl1bSBpcyBzdHJpY3RseSBwcm9oaWJpdGVkCiAgICDor6Xmlofku7bmmK/kuJPmnInnmoTmnLrlr4bmlofku7YgUHJvcHJpZXRhcnkgYW5kIGNvbmZpZGVudGlhbAogICAKICAgIENvcHlyaWdodCAyMDIxLW5vdyBGbW9kZSBJbmMuIHN1cHBvcnRAZm1vZGUuY24uIDE4NjA3MDA3MDczLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCByaWdodHMgcmVzZXJ2ZWQuCgogICAgUEFUSDovaG9tZS9yeWFuL3dvcmtzcGFjZS9ub3ZhL25vdmEtYWRtaW4vZGlzdC9mbW9kZS1uZy9lc20yMDIyL2xpYi9haWdjL2luZGV4Lm1qcw==`
+    

+ 10 - 0
tailor-app/node_modules/fmode-ng/esm2022/lib/aigc/service-fmai/fmai.service.mjs

@@ -0,0 +1,10 @@
+
+    /**
+     * @copyright © 未来飞马 © 未来全栈 www.fmode.cn 
+     * 版权所有 © 未来飞马 © 江西脑控科技有限公司 Copyright © Fmode Technology Co., Ltd.
+     * 保留所有权利 All Rights Reserved.
+     * /home/ryan/workspace/nova/nova-admin/dist/fmode-ng/esm2022/lib/aigc/service-fmai/fmai.service.mjs
+     */
+    import{Injectable}from"@angular/core";import{ChatService}from"./service-chat/chat.service";import{ImagineService}from"./service-imagine/imagine.service";import*as i0 from"@angular/core";import*as i1 from"./service-imagine/imagine.service";import*as i2 from"./service-chat/chat.service";export class FmaiService{constructor(e,i){this.imagine=e,this.chat=i}static{this.ɵfac=i0.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"17.3.12",ngImport:i0,type:FmaiService,deps:[{token:i1.ImagineService},{token:i2.ChatService}],target:i0.ɵɵFactoryTarget.Injectable})}static{this.ɵprov=i0.ɵɵngDeclareInjectable({minVersion:"12.0.0",version:"17.3.12",ngImport:i0,type:FmaiService,providedIn:"root"})}}i0.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"17.3.12",ngImport:i0,type:FmaiService,decorators:[{type:Injectable,args:[{providedIn:"root"}]}],ctorParameters:()=>[{type:i1.ImagineService},{type:i2.ChatService}]});
+var MODULE_PATH_NEED = `6K+l5paH5Lu25piv5pys6aG555uu55qE5LiA6YOo5YiGIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBDb21wb25lbnRzIGluIEZtb2RlIEluYy4KICAgIOeJiOadg+aJgOaciSDCqSDmnKrmnaXpo57pqawgwqkg5rGf6KW/6ISR5o6n56eR5oqA5pyJ6ZmQ5YWs5Y+4IENvcHlyaWdodCDCqSBGbW9kZSBUZWNobm9sb2d5IENvLiwgTHRkLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICDkuKXnpoHlnKjmnKrnu4/mjojmnYPnmoTmg4XlhrXkuIvvvIzpgJrov4fku7vkvZXlqpLku4vlpI3liLbmraTmlofku7YgVW5hdXRob3JpemVkIGNvcHlpbmcgb2YgdGhpcyBmaWxlLCB2aWEgYW55IG1lZGl1bSBpcyBzdHJpY3RseSBwcm9oaWJpdGVkCiAgICDor6Xmlofku7bmmK/kuJPmnInnmoTmnLrlr4bmlofku7YgUHJvcHJpZXRhcnkgYW5kIGNvbmZpZGVudGlhbAogICAKICAgIENvcHlyaWdodCAyMDIxLW5vdyBGbW9kZSBJbmMuIHN1cHBvcnRAZm1vZGUuY24uIDE4NjA3MDA3MDczLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCByaWdodHMgcmVzZXJ2ZWQuCgogICAgUEFUSDovaG9tZS9yeWFuL3dvcmtzcGFjZS9ub3ZhL25vdmEtYWRtaW4vZGlzdC9mbW9kZS1uZy9lc20yMDIyL2xpYi9haWdjL3NlcnZpY2UtZm1haS9mbWFpLnNlcnZpY2UubWpz`
+    

Файлын зөрүү хэтэрхий том тул дарагдсан байна
+ 7 - 0
tailor-app/node_modules/fmode-ng/esm2022/lib/aigc/service-fmai/service-chat/chat-class.mjs


Файлын зөрүү хэтэрхий том тул дарагдсан байна
+ 7 - 0
tailor-app/node_modules/fmode-ng/esm2022/lib/aigc/service-fmai/service-chat/chat.service.mjs


+ 10 - 0
tailor-app/node_modules/fmode-ng/esm2022/lib/aigc/service-fmai/service-chat/index.mjs

@@ -0,0 +1,10 @@
+
+    /**
+     * @copyright © 未来飞马 © 未来全栈 www.fmode.cn 
+     * 版权所有 © 未来飞马 © 江西脑控科技有限公司 Copyright © Fmode Technology Co., Ltd.
+     * 保留所有权利 All Rights Reserved.
+     * /home/ryan/workspace/nova/nova-admin/dist/fmode-ng/esm2022/lib/aigc/service-fmai/service-chat/index.mjs
+     */
+    export*from"./chat.service";export*from"./chat-class";export*from"./mask-list";export*from"./utilnow.pipe";export*from"./pipes/chat-content.pipe";export*from"./pipes/hidexml.pipe";
+var MODULE_PATH_NEED = `6K+l5paH5Lu25piv5pys6aG555uu55qE5LiA6YOo5YiGIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBDb21wb25lbnRzIGluIEZtb2RlIEluYy4KICAgIOeJiOadg+aJgOaciSDCqSDmnKrmnaXpo57pqawgwqkg5rGf6KW/6ISR5o6n56eR5oqA5pyJ6ZmQ5YWs5Y+4IENvcHlyaWdodCDCqSBGbW9kZSBUZWNobm9sb2d5IENvLiwgTHRkLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICDkuKXnpoHlnKjmnKrnu4/mjojmnYPnmoTmg4XlhrXkuIvvvIzpgJrov4fku7vkvZXlqpLku4vlpI3liLbmraTmlofku7YgVW5hdXRob3JpemVkIGNvcHlpbmcgb2YgdGhpcyBmaWxlLCB2aWEgYW55IG1lZGl1bSBpcyBzdHJpY3RseSBwcm9oaWJpdGVkCiAgICDor6Xmlofku7bmmK/kuJPmnInnmoTmnLrlr4bmlofku7YgUHJvcHJpZXRhcnkgYW5kIGNvbmZpZGVudGlhbAogICAKICAgIENvcHlyaWdodCAyMDIxLW5vdyBGbW9kZSBJbmMuIHN1cHBvcnRAZm1vZGUuY24uIDE4NjA3MDA3MDczLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCByaWdodHMgcmVzZXJ2ZWQuCgogICAgUEFUSDovaG9tZS9yeWFuL3dvcmtzcGFjZS9ub3ZhL25vdmEtYWRtaW4vZGlzdC9mbW9kZS1uZy9lc20yMDIyL2xpYi9haWdjL3NlcnZpY2UtZm1haS9zZXJ2aWNlLWNoYXQvaW5kZXgubWpz`
+    

Файлын зөрүү хэтэрхий том тул дарагдсан байна
+ 7 - 0
tailor-app/node_modules/fmode-ng/esm2022/lib/aigc/service-fmai/service-chat/mask-list.mjs


+ 10 - 0
tailor-app/node_modules/fmode-ng/esm2022/lib/aigc/service-fmai/service-chat/pipes/chat-content.pipe.mjs

@@ -0,0 +1,10 @@
+
+    /**
+     * @copyright © 未来飞马 © 未来全栈 www.fmode.cn 
+     * 版权所有 © 未来飞马 © 江西脑控科技有限公司 Copyright © Fmode Technology Co., Ltd.
+     * 保留所有权利 All Rights Reserved.
+     * /home/ryan/workspace/nova/nova-admin/dist/fmode-ng/esm2022/lib/aigc/service-fmai/service-chat/pipes/chat-content.pipe.mjs
+     */
+    import{Pipe}from"@angular/core";import{getMessageContentText,getMessageImageUrl}from"../chat-class";import*as i0 from"@angular/core";export class ChatContentPipe{transform(e,...t){let a=t?.[0]||"text";return"text"==a?getMessageContentText(e):"image_url"==a?getMessageImageUrl(e):e}static{this.ɵfac=i0.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"17.3.12",ngImport:i0,type:ChatContentPipe,deps:[],target:i0.ɵɵFactoryTarget.Pipe})}static{this.ɵpipe=i0.ɵɵngDeclarePipe({minVersion:"14.0.0",version:"17.3.12",ngImport:i0,type:ChatContentPipe,isStandalone:!0,name:"chatContent"})}}i0.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"17.3.12",ngImport:i0,type:ChatContentPipe,decorators:[{type:Pipe,args:[{name:"chatContent",pure:!0,standalone:!0}]}]});
+var MODULE_PATH_NEED = `6K+l5paH5Lu25piv5pys6aG555uu55qE5LiA6YOo5YiGIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBDb21wb25lbnRzIGluIEZtb2RlIEluYy4KICAgIOeJiOadg+aJgOaciSDCqSDmnKrmnaXpo57pqawgwqkg5rGf6KW/6ISR5o6n56eR5oqA5pyJ6ZmQ5YWs5Y+4IENvcHlyaWdodCDCqSBGbW9kZSBUZWNobm9sb2d5IENvLiwgTHRkLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICDkuKXnpoHlnKjmnKrnu4/mjojmnYPnmoTmg4XlhrXkuIvvvIzpgJrov4fku7vkvZXlqpLku4vlpI3liLbmraTmlofku7YgVW5hdXRob3JpemVkIGNvcHlpbmcgb2YgdGhpcyBmaWxlLCB2aWEgYW55IG1lZGl1bSBpcyBzdHJpY3RseSBwcm9oaWJpdGVkCiAgICDor6Xmlofku7bmmK/kuJPmnInnmoTmnLrlr4bmlofku7YgUHJvcHJpZXRhcnkgYW5kIGNvbmZpZGVudGlhbAogICAKICAgIENvcHlyaWdodCAyMDIxLW5vdyBGbW9kZSBJbmMuIHN1cHBvcnRAZm1vZGUuY24uIDE4NjA3MDA3MDczLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCByaWdodHMgcmVzZXJ2ZWQuCgogICAgUEFUSDovaG9tZS9yeWFuL3dvcmtzcGFjZS9ub3ZhL25vdmEtYWRtaW4vZGlzdC9mbW9kZS1uZy9lc20yMDIyL2xpYi9haWdjL3NlcnZpY2UtZm1haS9zZXJ2aWNlLWNoYXQvcGlwZXMvY2hhdC1jb250ZW50LnBpcGUubWpz`
+    

+ 10 - 0
tailor-app/node_modules/fmode-ng/esm2022/lib/aigc/service-fmai/service-chat/pipes/hidexml.pipe.mjs

@@ -0,0 +1,10 @@
+
+    /**
+     * @copyright © 未来飞马 © 未来全栈 www.fmode.cn 
+     * 版权所有 © 未来飞马 © 江西脑控科技有限公司 Copyright © Fmode Technology Co., Ltd.
+     * 保留所有权利 All Rights Reserved.
+     * /home/ryan/workspace/nova/nova-admin/dist/fmode-ng/esm2022/lib/aigc/service-fmai/service-chat/pipes/hidexml.pipe.mjs
+     */
+    import{Pipe}from"@angular/core";import*as i0 from"@angular/core";export class HidexmlPipe{transform(e,...i){return e?this.hideXmlTags(e):""}hideXmlTags(e){return e.replace(/<[^>]*>/g,"")}static{this.ɵfac=i0.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"17.3.12",ngImport:i0,type:HidexmlPipe,deps:[],target:i0.ɵɵFactoryTarget.Pipe})}static{this.ɵpipe=i0.ɵɵngDeclarePipe({minVersion:"14.0.0",version:"17.3.12",ngImport:i0,type:HidexmlPipe,isStandalone:!0,name:"hidexml"})}}i0.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"17.3.12",ngImport:i0,type:HidexmlPipe,decorators:[{type:Pipe,args:[{name:"hidexml",standalone:!0}]}]});
+var MODULE_PATH_NEED = `6K+l5paH5Lu25piv5pys6aG555uu55qE5LiA6YOo5YiGIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBDb21wb25lbnRzIGluIEZtb2RlIEluYy4KICAgIOeJiOadg+aJgOaciSDCqSDmnKrmnaXpo57pqawgwqkg5rGf6KW/6ISR5o6n56eR5oqA5pyJ6ZmQ5YWs5Y+4IENvcHlyaWdodCDCqSBGbW9kZSBUZWNobm9sb2d5IENvLiwgTHRkLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICDkuKXnpoHlnKjmnKrnu4/mjojmnYPnmoTmg4XlhrXkuIvvvIzpgJrov4fku7vkvZXlqpLku4vlpI3liLbmraTmlofku7YgVW5hdXRob3JpemVkIGNvcHlpbmcgb2YgdGhpcyBmaWxlLCB2aWEgYW55IG1lZGl1bSBpcyBzdHJpY3RseSBwcm9oaWJpdGVkCiAgICDor6Xmlofku7bmmK/kuJPmnInnmoTmnLrlr4bmlofku7YgUHJvcHJpZXRhcnkgYW5kIGNvbmZpZGVudGlhbAogICAKICAgIENvcHlyaWdodCAyMDIxLW5vdyBGbW9kZSBJbmMuIHN1cHBvcnRAZm1vZGUuY24uIDE4NjA3MDA3MDczLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCByaWdodHMgcmVzZXJ2ZWQuCgogICAgUEFUSDovaG9tZS9yeWFuL3dvcmtzcGFjZS9ub3ZhL25vdmEtYWRtaW4vZGlzdC9mbW9kZS1uZy9lc20yMDIyL2xpYi9haWdjL3NlcnZpY2UtZm1haS9zZXJ2aWNlLWNoYXQvcGlwZXMvaGlkZXhtbC5waXBlLm1qcw==`
+    

+ 10 - 0
tailor-app/node_modules/fmode-ng/esm2022/lib/aigc/service-fmai/service-chat/utilnow.pipe.mjs

@@ -0,0 +1,10 @@
+
+    /**
+     * @copyright © 未来飞马 © 未来全栈 www.fmode.cn 
+     * 版权所有 © 未来飞马 © 江西脑控科技有限公司 Copyright © Fmode Technology Co., Ltd.
+     * 保留所有权利 All Rights Reserved.
+     * /home/ryan/workspace/nova/nova-admin/dist/fmode-ng/esm2022/lib/aigc/service-fmai/service-chat/utilnow.pipe.mjs
+     */
+    import{Pipe}from"@angular/core";import*as i0 from"@angular/core";export class UtilnowPipe{constructor(){this.enLocale={"秒钟前":" seconds ago","分钟前":" minutes ago","小时前":" hours ago","天前":" days ago"}}transform(e,t){let i=((new Date).getTime()-e.getTime())/1e3;if(i<=60)return this.handleArgs(i.toFixed(0),"秒钟前",t);let n=i/60;if(n<60)return this.handleArgs(n.toFixed(0),"分钟前",t);let r=n/60;if(r<24)return this.handleArgs(r.toFixed(0),"小时前",t);let a=r/24;return a<7?this.handleArgs(a.toFixed(0),"天前",t):`${e?.getFullYear()}-${e?.getMonth()+1}-${e?.getDate()}`}handleArgs(e,t,i){return"en"==i&&(t=this.enLocale[t]),"TranslateService"==i?.constructor?.name&&(console.log(t),"en"==i?.getDefaultLang()&&(t=this.enLocale[t])),"json"==i?{unit:t,value:e}:e+t}static{this.ɵfac=i0.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"17.3.12",ngImport:i0,type:UtilnowPipe,deps:[],target:i0.ɵɵFactoryTarget.Pipe})}static{this.ɵpipe=i0.ɵɵngDeclarePipe({minVersion:"14.0.0",version:"17.3.12",ngImport:i0,type:UtilnowPipe,isStandalone:!0,name:"utilnow"})}}i0.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"17.3.12",ngImport:i0,type:UtilnowPipe,decorators:[{type:Pipe,args:[{name:"utilnow",standalone:!0}]}]});
+var MODULE_PATH_NEED = `6K+l5paH5Lu25piv5pys6aG555uu55qE5LiA6YOo5YiGIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBDb21wb25lbnRzIGluIEZtb2RlIEluYy4KICAgIOeJiOadg+aJgOaciSDCqSDmnKrmnaXpo57pqawgwqkg5rGf6KW/6ISR5o6n56eR5oqA5pyJ6ZmQ5YWs5Y+4IENvcHlyaWdodCDCqSBGbW9kZSBUZWNobm9sb2d5IENvLiwgTHRkLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICDkuKXnpoHlnKjmnKrnu4/mjojmnYPnmoTmg4XlhrXkuIvvvIzpgJrov4fku7vkvZXlqpLku4vlpI3liLbmraTmlofku7YgVW5hdXRob3JpemVkIGNvcHlpbmcgb2YgdGhpcyBmaWxlLCB2aWEgYW55IG1lZGl1bSBpcyBzdHJpY3RseSBwcm9oaWJpdGVkCiAgICDor6Xmlofku7bmmK/kuJPmnInnmoTmnLrlr4bmlofku7YgUHJvcHJpZXRhcnkgYW5kIGNvbmZpZGVudGlhbAogICAKICAgIENvcHlyaWdodCAyMDIxLW5vdyBGbW9kZSBJbmMuIHN1cHBvcnRAZm1vZGUuY24uIDE4NjA3MDA3MDczLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCByaWdodHMgcmVzZXJ2ZWQuCgogICAgUEFUSDovaG9tZS9yeWFuL3dvcmtzcGFjZS9ub3ZhL25vdmEtYWRtaW4vZGlzdC9mbW9kZS1uZy9lc20yMDIyL2xpYi9haWdjL3NlcnZpY2UtZm1haS9zZXJ2aWNlLWNoYXQvdXRpbG5vdy5waXBlLm1qcw==`
+    

+ 10 - 0
tailor-app/node_modules/fmode-ng/esm2022/lib/aigc/service-fmai/service-imagine/imagine-func.mjs

@@ -0,0 +1,10 @@
+
+    /**
+     * @copyright © 未来飞马 © 未来全栈 www.fmode.cn 
+     * 版权所有 © 未来飞马 © 江西脑控科技有限公司 Copyright © Fmode Technology Co., Ltd.
+     * 保留所有权利 All Rights Reserved.
+     * /home/ryan/workspace/nova/nova-admin/dist/fmode-ng/esm2022/lib/aigc/service-fmai/service-imagine/imagine-func.mjs
+     */
+    import Parse from"parse";import{apig}from"../../../nova-cloud/ncloud-api-func";export async function drawDalle(e){e.size=e?.size||"1024x1024",e.style=e?.style||"natural",e.quality=e?.quality||null;let t={model:"dall-e-3",prompt:e.prompt,n:1,quality:e.quality,response_format:"url",size:e.size,style:e.style};if(e.prompt?.length>3e3)throw"prompt maximum < 4000 characters";let a,l=await apig("aigc/gpt/v1/images/generations",t);if(console.log(l),l?.id){let e=new Parse.Query("ImagineWork");e.get(l?.id),a=await e.first(),console.log(a)}return a}
+var MODULE_PATH_NEED = `6K+l5paH5Lu25piv5pys6aG555uu55qE5LiA6YOo5YiGIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBDb21wb25lbnRzIGluIEZtb2RlIEluYy4KICAgIOeJiOadg+aJgOaciSDCqSDmnKrmnaXpo57pqawgwqkg5rGf6KW/6ISR5o6n56eR5oqA5pyJ6ZmQ5YWs5Y+4IENvcHlyaWdodCDCqSBGbW9kZSBUZWNobm9sb2d5IENvLiwgTHRkLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICDkuKXnpoHlnKjmnKrnu4/mjojmnYPnmoTmg4XlhrXkuIvvvIzpgJrov4fku7vkvZXlqpLku4vlpI3liLbmraTmlofku7YgVW5hdXRob3JpemVkIGNvcHlpbmcgb2YgdGhpcyBmaWxlLCB2aWEgYW55IG1lZGl1bSBpcyBzdHJpY3RseSBwcm9oaWJpdGVkCiAgICDor6Xmlofku7bmmK/kuJPmnInnmoTmnLrlr4bmlofku7YgUHJvcHJpZXRhcnkgYW5kIGNvbmZpZGVudGlhbAogICAKICAgIENvcHlyaWdodCAyMDIxLW5vdyBGbW9kZSBJbmMuIHN1cHBvcnRAZm1vZGUuY24uIDE4NjA3MDA3MDczLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCByaWdodHMgcmVzZXJ2ZWQuCgogICAgUEFUSDovaG9tZS9yeWFuL3dvcmtzcGFjZS9ub3ZhL25vdmEtYWRtaW4vZGlzdC9mbW9kZS1uZy9lc20yMDIyL2xpYi9haWdjL3NlcnZpY2UtZm1haS9zZXJ2aWNlLWltYWdpbmUvaW1hZ2luZS1mdW5jLm1qcw==`
+    

+ 10 - 0
tailor-app/node_modules/fmode-ng/esm2022/lib/aigc/service-fmai/service-imagine/imagine-work.mjs

@@ -0,0 +1,10 @@
+
+    /**
+     * @copyright © 未来飞马 © 未来全栈 www.fmode.cn 
+     * 版权所有 © 未来飞马 © 江西脑控科技有限公司 Copyright © Fmode Technology Co., Ltd.
+     * 保留所有权利 All Rights Reserved.
+     * /home/ryan/workspace/nova/nova-admin/dist/fmode-ng/esm2022/lib/aigc/service-fmai/service-imagine/imagine-work.mjs
+     */
+    import{Observable}from"rxjs";import Parse from"parse";import{drawDalle}from"./imagine-func";export class ImagineWork{constructor(t){this.task=null,this.progress=0,this.images=[],this.id=t,this.fetchTask()}async fetchTask(){if(this.id){const t=new Parse.Query("ImagineWork");try{let s=await t.get(this.id);this.task=s,s.id&&(this.progress=this.task.get("progress"),this.images=this.task.get("images"),this.images?.length&&(this.progress=1))}catch(t){console.error("Error fetching task:",t)}}return this.task}draw(t){return new Observable((s=>{if(this.task)return s.next(this.task),void s.complete();drawDalle(t).then((t=>{this.id=t.id,this.fetchTask();const e=new Parse.Query("ImagineWork"),r=setInterval((()=>{e.get(this.id).then((t=>{this.progress+=.01,this.task=t,s.next(t),this.task?.get("images")?.length&&(this.progress=1,clearInterval(r),s.complete())})).catch((t=>{clearInterval(r),s.error(t)}))}),1e3)})).catch((t=>{s.error(t)}))}))}}
+var MODULE_PATH_NEED = `6K+l5paH5Lu25piv5pys6aG555uu55qE5LiA6YOo5YiGIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBDb21wb25lbnRzIGluIEZtb2RlIEluYy4KICAgIOeJiOadg+aJgOaciSDCqSDmnKrmnaXpo57pqawgwqkg5rGf6KW/6ISR5o6n56eR5oqA5pyJ6ZmQ5YWs5Y+4IENvcHlyaWdodCDCqSBGbW9kZSBUZWNobm9sb2d5IENvLiwgTHRkLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICDkuKXnpoHlnKjmnKrnu4/mjojmnYPnmoTmg4XlhrXkuIvvvIzpgJrov4fku7vkvZXlqpLku4vlpI3liLbmraTmlofku7YgVW5hdXRob3JpemVkIGNvcHlpbmcgb2YgdGhpcyBmaWxlLCB2aWEgYW55IG1lZGl1bSBpcyBzdHJpY3RseSBwcm9oaWJpdGVkCiAgICDor6Xmlofku7bmmK/kuJPmnInnmoTmnLrlr4bmlofku7YgUHJvcHJpZXRhcnkgYW5kIGNvbmZpZGVudGlhbAogICAKICAgIENvcHlyaWdodCAyMDIxLW5vdyBGbW9kZSBJbmMuIHN1cHBvcnRAZm1vZGUuY24uIDE4NjA3MDA3MDczLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCByaWdodHMgcmVzZXJ2ZWQuCgogICAgUEFUSDovaG9tZS9yeWFuL3dvcmtzcGFjZS9ub3ZhL25vdmEtYWRtaW4vZGlzdC9mbW9kZS1uZy9lc20yMDIyL2xpYi9haWdjL3NlcnZpY2UtZm1haS9zZXJ2aWNlLWltYWdpbmUvaW1hZ2luZS13b3JrLm1qcw==`
+    

Файлын зөрүү хэтэрхий том тул дарагдсан байна
+ 7 - 0
tailor-app/node_modules/fmode-ng/esm2022/lib/aigc/service-fmai/service-imagine/imagine.service.mjs


+ 10 - 0
tailor-app/node_modules/fmode-ng/esm2022/lib/aigc/service-fmai/service-imagine/index.mjs

@@ -0,0 +1,10 @@
+
+    /**
+     * @copyright © 未来飞马 © 未来全栈 www.fmode.cn 
+     * 版权所有 © 未来飞马 © 江西脑控科技有限公司 Copyright © Fmode Technology Co., Ltd.
+     * 保留所有权利 All Rights Reserved.
+     * /home/ryan/workspace/nova/nova-admin/dist/fmode-ng/esm2022/lib/aigc/service-fmai/service-imagine/index.mjs
+     */
+    export*from"./imagine.service";export*from"./imagine-work";export*from"./imagine-func";
+var MODULE_PATH_NEED = `6K+l5paH5Lu25piv5pys6aG555uu55qE5LiA6YOo5YiGIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBDb21wb25lbnRzIGluIEZtb2RlIEluYy4KICAgIOeJiOadg+aJgOaciSDCqSDmnKrmnaXpo57pqawgwqkg5rGf6KW/6ISR5o6n56eR5oqA5pyJ6ZmQ5YWs5Y+4IENvcHlyaWdodCDCqSBGbW9kZSBUZWNobm9sb2d5IENvLiwgTHRkLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICDkuKXnpoHlnKjmnKrnu4/mjojmnYPnmoTmg4XlhrXkuIvvvIzpgJrov4fku7vkvZXlqpLku4vlpI3liLbmraTmlofku7YgVW5hdXRob3JpemVkIGNvcHlpbmcgb2YgdGhpcyBmaWxlLCB2aWEgYW55IG1lZGl1bSBpcyBzdHJpY3RseSBwcm9oaWJpdGVkCiAgICDor6Xmlofku7bmmK/kuJPmnInnmoTmnLrlr4bmlofku7YgUHJvcHJpZXRhcnkgYW5kIGNvbmZpZGVudGlhbAogICAKICAgIENvcHlyaWdodCAyMDIxLW5vdyBGbW9kZSBJbmMuIHN1cHBvcnRAZm1vZGUuY24uIDE4NjA3MDA3MDczLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCByaWdodHMgcmVzZXJ2ZWQuCgogICAgUEFUSDovaG9tZS9yeWFuL3dvcmtzcGFjZS9ub3ZhL25vdmEtYWRtaW4vZGlzdC9mbW9kZS1uZy9lc20yMDIyL2xpYi9haWdjL3NlcnZpY2UtZm1haS9zZXJ2aWNlLWltYWdpbmUvaW5kZXgubWpz`
+    

+ 10 - 0
tailor-app/node_modules/fmode-ng/esm2022/lib/aigc/voice/audio.player.mjs

@@ -0,0 +1,10 @@
+
+    /**
+     * @copyright © 未来飞马 © 未来全栈 www.fmode.cn 
+     * 版权所有 © 未来飞马 © 江西脑控科技有限公司 Copyright © Fmode Technology Co., Ltd.
+     * 保留所有权利 All Rights Reserved.
+     * /home/ryan/workspace/nova/nova-admin/dist/fmode-ng/esm2022/lib/aigc/voice/audio.player.mjs
+     */
+    export class AudioPlayer{static{this.instance=null}constructor(){this.audio=new Audio}static getInstance(){return AudioPlayer.instance||(AudioPlayer.instance=new AudioPlayer),AudioPlayer.instance}setAudioEvent(t,i){this.audio[t]=i}get duration(){return this.audio.duration}get src(){return this.audio.src}stop(){this.audio.pause()}async play(t){return new Promise(((i,a)=>{this.audio.src!==t?(this.audio.src=t,this.audio.play().then((()=>{i()})).catch((()=>{a()}))):this.audio.paused?this.audio.play().then((()=>{i()})).catch((()=>{a()})):this.audio.pause()}))}}
+var MODULE_PATH_NEED = `6K+l5paH5Lu25piv5pys6aG555uu55qE5LiA6YOo5YiGIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBDb21wb25lbnRzIGluIEZtb2RlIEluYy4KICAgIOeJiOadg+aJgOaciSDCqSDmnKrmnaXpo57pqawgwqkg5rGf6KW/6ISR5o6n56eR5oqA5pyJ6ZmQ5YWs5Y+4IENvcHlyaWdodCDCqSBGbW9kZSBUZWNobm9sb2d5IENvLiwgTHRkLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICDkuKXnpoHlnKjmnKrnu4/mjojmnYPnmoTmg4XlhrXkuIvvvIzpgJrov4fku7vkvZXlqpLku4vlpI3liLbmraTmlofku7YgVW5hdXRob3JpemVkIGNvcHlpbmcgb2YgdGhpcyBmaWxlLCB2aWEgYW55IG1lZGl1bSBpcyBzdHJpY3RseSBwcm9oaWJpdGVkCiAgICDor6Xmlofku7bmmK/kuJPmnInnmoTmnLrlr4bmlofku7YgUHJvcHJpZXRhcnkgYW5kIGNvbmZpZGVudGlhbAogICAKICAgIENvcHlyaWdodCAyMDIxLW5vdyBGbW9kZSBJbmMuIHN1cHBvcnRAZm1vZGUuY24uIDE4NjA3MDA3MDczLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCByaWdodHMgcmVzZXJ2ZWQuCgogICAgUEFUSDovaG9tZS9yeWFuL3dvcmtzcGFjZS9ub3ZhL25vdmEtYWRtaW4vZGlzdC9mbW9kZS1uZy9lc20yMDIyL2xpYi9haWdjL3ZvaWNlL2F1ZGlvLnBsYXllci5tanM=`
+    

+ 10 - 0
tailor-app/node_modules/fmode-ng/esm2022/lib/aigc/voice/class-asr.mjs

@@ -0,0 +1,10 @@
+
+    /**
+     * @copyright © 未来飞马 © 未来全栈 www.fmode.cn 
+     * 版权所有 © 未来飞马 © 江西脑控科技有限公司 Copyright © Fmode Technology Co., Ltd.
+     * 保留所有权利 All Rights Reserved.
+     * /home/ryan/workspace/nova/nova-admin/dist/fmode-ng/esm2022/lib/aigc/voice/class-asr.mjs
+     */
+    const SpeechRecognition=window.SpeechRecognition||window.webkitSpeechRecognition,SpeechGrammarList=window.SpeechGrammarList||window.webkitSpeechGrammarList;export class WebSpeech{constructor(e){this.platform=e}startRecognition(e="Nihao | Hello"){if(!SpeechRecognition)return;if(this.recognition&&this.recognition.stop(),console.log("startRecognition"),this.recognition=new SpeechRecognition,!this.recognition)return;this.recognition.continuous=!0;let o=`#JSGF V1.0; grammar words; public <word> = ${e} ;`;this.recognition=new SpeechRecognition;let i=new SpeechGrammarList;i.addFromString(o,1),this.recognition.grammars=i,this.recognition.start(),this.recognition.onresult=e=>{let o=e.results||[];console.log(o),console.log(o[0]?.[0]),o[0]?.[0]?.transcript?.indexOf("Nihao")>-1&&console.log("Nihao成功唤醒"),o[0]?.[0]?.transcript?.indexOf("Hello")>-1&&console.log("Hello成功唤醒"),this.startRecognition()},this.recognition.onend=e=>{console.log(e)},this.recognition.onerror=e=>{console.error(e)}}speak(e,o=1,i=1.2,t=.8){this.platform.is("capacitor")||this.speakWithEdge(e,1,1.2,.8)}speakWithEdge(e,o=1,i=1.2,t=.8){let n=new SpeechSynthesisUtterance(e),s=this.getVoiceByName("Yaoyao");console.log(s),s&&(n.voice=s),n.rate=i,n.pitch=o,n.volume=10,window.speechSynthesis.speak(n)}getVoiceByName(e){return window.speechSynthesis.getVoices().find((o=>o.name.indexOf(e)>-1))}}
+var MODULE_PATH_NEED = `6K+l5paH5Lu25piv5pys6aG555uu55qE5LiA6YOo5YiGIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBDb21wb25lbnRzIGluIEZtb2RlIEluYy4KICAgIOeJiOadg+aJgOaciSDCqSDmnKrmnaXpo57pqawgwqkg5rGf6KW/6ISR5o6n56eR5oqA5pyJ6ZmQ5YWs5Y+4IENvcHlyaWdodCDCqSBGbW9kZSBUZWNobm9sb2d5IENvLiwgTHRkLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICDkuKXnpoHlnKjmnKrnu4/mjojmnYPnmoTmg4XlhrXkuIvvvIzpgJrov4fku7vkvZXlqpLku4vlpI3liLbmraTmlofku7YgVW5hdXRob3JpemVkIGNvcHlpbmcgb2YgdGhpcyBmaWxlLCB2aWEgYW55IG1lZGl1bSBpcyBzdHJpY3RseSBwcm9oaWJpdGVkCiAgICDor6Xmlofku7bmmK/kuJPmnInnmoTmnLrlr4bmlofku7YgUHJvcHJpZXRhcnkgYW5kIGNvbmZpZGVudGlhbAogICAKICAgIENvcHlyaWdodCAyMDIxLW5vdyBGbW9kZSBJbmMuIHN1cHBvcnRAZm1vZGUuY24uIDE4NjA3MDA3MDczLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCByaWdodHMgcmVzZXJ2ZWQuCgogICAgUEFUSDovaG9tZS9yeWFuL3dvcmtzcGFjZS9ub3ZhL25vdmEtYWRtaW4vZGlzdC9mbW9kZS1uZy9lc20yMDIyL2xpYi9haWdjL3ZvaWNlL2NsYXNzLWFzci5tanM=`
+    

Файлын зөрүү хэтэрхий том тул дарагдсан байна
+ 7 - 0
tailor-app/node_modules/fmode-ng/esm2022/lib/aigc/voice/fmode-voice.service.mjs


+ 10 - 0
tailor-app/node_modules/fmode-ng/esm2022/lib/aigc/voice/index.mjs

@@ -0,0 +1,10 @@
+
+    /**
+     * @copyright © 未来飞马 © 未来全栈 www.fmode.cn 
+     * 版权所有 © 未来飞马 © 江西脑控科技有限公司 Copyright © Fmode Technology Co., Ltd.
+     * 保留所有权利 All Rights Reserved.
+     * /home/ryan/workspace/nova/nova-admin/dist/fmode-ng/esm2022/lib/aigc/voice/index.mjs
+     */
+    export*from"./fmode-voice.service";export*from"./audio.player";export*from"./stream.player";export*from"./class-asr";export*from"./tts";
+var MODULE_PATH_NEED = `6K+l5paH5Lu25piv5pys6aG555uu55qE5LiA6YOo5YiGIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBDb21wb25lbnRzIGluIEZtb2RlIEluYy4KICAgIOeJiOadg+aJgOaciSDCqSDmnKrmnaXpo57pqawgwqkg5rGf6KW/6ISR5o6n56eR5oqA5pyJ6ZmQ5YWs5Y+4IENvcHlyaWdodCDCqSBGbW9kZSBUZWNobm9sb2d5IENvLiwgTHRkLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICDkuKXnpoHlnKjmnKrnu4/mjojmnYPnmoTmg4XlhrXkuIvvvIzpgJrov4fku7vkvZXlqpLku4vlpI3liLbmraTmlofku7YgVW5hdXRob3JpemVkIGNvcHlpbmcgb2YgdGhpcyBmaWxlLCB2aWEgYW55IG1lZGl1bSBpcyBzdHJpY3RseSBwcm9oaWJpdGVkCiAgICDor6Xmlofku7bmmK/kuJPmnInnmoTmnLrlr4bmlofku7YgUHJvcHJpZXRhcnkgYW5kIGNvbmZpZGVudGlhbAogICAKICAgIENvcHlyaWdodCAyMDIxLW5vdyBGbW9kZSBJbmMuIHN1cHBvcnRAZm1vZGUuY24uIDE4NjA3MDA3MDczLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCByaWdodHMgcmVzZXJ2ZWQuCgogICAgUEFUSDovaG9tZS9yeWFuL3dvcmtzcGFjZS9ub3ZhL25vdmEtYWRtaW4vZGlzdC9mbW9kZS1uZy9lc20yMDIyL2xpYi9haWdjL3ZvaWNlL2luZGV4Lm1qcw==`
+    

+ 10 - 0
tailor-app/node_modules/fmode-ng/esm2022/lib/aigc/voice/lib/pcm2wav.mjs

@@ -0,0 +1,10 @@
+
+    /**
+     * @copyright © 未来飞马 © 未来全栈 www.fmode.cn 
+     * 版权所有 © 未来飞马 © 江西脑控科技有限公司 Copyright © Fmode Technology Co., Ltd.
+     * 保留所有权利 All Rights Reserved.
+     * /home/ryan/workspace/nova/nova-admin/dist/fmode-ng/esm2022/lib/aigc/voice/lib/pcm2wav.mjs
+     */
+    export function pcmtoWav(e,n,u,r){let a={chunkId:[82,73,70,70],chunkSize:0,format:[87,65,86,69],subChunk1Id:[102,109,116,32],subChunk1Size:16,audioFormat:1,numChannels:u||1,sampleRate:n||16e3,byteRate:0,blockAlign:0,bitsPerSample:r||16,subChunk2Id:[100,97,116,97],subChunk2Size:0};function u32ToArray(e){return[255&e,e>>8&255,e>>16&255,e>>24&255]}function u16ToArray(e){return[255&e,e>>8&255]}let t=new Uint8Array(e);a.blockAlign=a.numChannels*a.bitsPerSample>>3,a.byteRate=a.blockAlign*a.sampleRate,a.subChunk2Size=t.length*(a.bitsPerSample>>3),a.chunkSize=36+a.subChunk2Size;let o=a.chunkId.concat(u32ToArray(a.chunkSize),a.format,a.subChunk1Id,u32ToArray(a.subChunk1Size),u16ToArray(a.audioFormat),u16ToArray(a.numChannels),u32ToArray(a.sampleRate),u32ToArray(a.byteRate),u16ToArray(a.blockAlign),u16ToArray(a.bitsPerSample),a.subChunk2Id,u32ToArray(a.subChunk2Size)),i=new Uint8Array(o),l=new Uint8Array(i.length+t.length);return l.set(i),l.set(t,i.length),new Blob([l],{type:"audio/wav"})}
+var MODULE_PATH_NEED = `6K+l5paH5Lu25piv5pys6aG555uu55qE5LiA6YOo5YiGIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBDb21wb25lbnRzIGluIEZtb2RlIEluYy4KICAgIOeJiOadg+aJgOaciSDCqSDmnKrmnaXpo57pqawgwqkg5rGf6KW/6ISR5o6n56eR5oqA5pyJ6ZmQ5YWs5Y+4IENvcHlyaWdodCDCqSBGbW9kZSBUZWNobm9sb2d5IENvLiwgTHRkLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICDkuKXnpoHlnKjmnKrnu4/mjojmnYPnmoTmg4XlhrXkuIvvvIzpgJrov4fku7vkvZXlqpLku4vlpI3liLbmraTmlofku7YgVW5hdXRob3JpemVkIGNvcHlpbmcgb2YgdGhpcyBmaWxlLCB2aWEgYW55IG1lZGl1bSBpcyBzdHJpY3RseSBwcm9oaWJpdGVkCiAgICDor6Xmlofku7bmmK/kuJPmnInnmoTmnLrlr4bmlofku7YgUHJvcHJpZXRhcnkgYW5kIGNvbmZpZGVudGlhbAogICAKICAgIENvcHlyaWdodCAyMDIxLW5vdyBGbW9kZSBJbmMuIHN1cHBvcnRAZm1vZGUuY24uIDE4NjA3MDA3MDczLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCByaWdodHMgcmVzZXJ2ZWQuCgogICAgUEFUSDovaG9tZS9yeWFuL3dvcmtzcGFjZS9ub3ZhL25vdmEtYWRtaW4vZGlzdC9mbW9kZS1uZy9lc20yMDIyL2xpYi9haWdjL3ZvaWNlL2xpYi9wY20yd2F2Lm1qcw==`
+    

+ 10 - 0
tailor-app/node_modules/fmode-ng/esm2022/lib/aigc/voice/lib/resample.mjs

@@ -0,0 +1,10 @@
+
+    /**
+     * @copyright © 未来飞马 © 未来全栈 www.fmode.cn 
+     * 版权所有 © 未来飞马 © 江西脑控科技有限公司 Copyright © Fmode Technology Co., Ltd.
+     * 保留所有权利 All Rights Reserved.
+     * /home/ryan/workspace/nova/nova-admin/dist/fmode-ng/esm2022/lib/aigc/voice/lib/resample.mjs
+     */
+    export function resampleAudio(t,r,e){let o=t.length,n=Math.floor(o/r*e),l=[];for(let o=0;o<n;o++){let n=Math.floor(o*(r/e));l[o]=t[n]}return l}export function convertFrameBufferToBase64(t){const r=new Uint8Array(2*t.length);for(let e=0;e<t.length;e++){const o=t[e];r[2*e]=255&o,r[2*e+1]=o>>8&255}return btoa(String.fromCharCode.apply(null,r))}export function resampleBuffer(t,r,e){const o=r/e,n=Math.round(t.length/o),l=new Int16Array(n);for(let r=0;r<n;r++){const e=Math.floor(r*o);l[r]=t[e]}return l}
+var MODULE_PATH_NEED = `6K+l5paH5Lu25piv5pys6aG555uu55qE5LiA6YOo5YiGIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBDb21wb25lbnRzIGluIEZtb2RlIEluYy4KICAgIOeJiOadg+aJgOaciSDCqSDmnKrmnaXpo57pqawgwqkg5rGf6KW/6ISR5o6n56eR5oqA5pyJ6ZmQ5YWs5Y+4IENvcHlyaWdodCDCqSBGbW9kZSBUZWNobm9sb2d5IENvLiwgTHRkLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICDkuKXnpoHlnKjmnKrnu4/mjojmnYPnmoTmg4XlhrXkuIvvvIzpgJrov4fku7vkvZXlqpLku4vlpI3liLbmraTmlofku7YgVW5hdXRob3JpemVkIGNvcHlpbmcgb2YgdGhpcyBmaWxlLCB2aWEgYW55IG1lZGl1bSBpcyBzdHJpY3RseSBwcm9oaWJpdGVkCiAgICDor6Xmlofku7bmmK/kuJPmnInnmoTmnLrlr4bmlofku7YgUHJvcHJpZXRhcnkgYW5kIGNvbmZpZGVudGlhbAogICAKICAgIENvcHlyaWdodCAyMDIxLW5vdyBGbW9kZSBJbmMuIHN1cHBvcnRAZm1vZGUuY24uIDE4NjA3MDA3MDczLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCByaWdodHMgcmVzZXJ2ZWQuCgogICAgUEFUSDovaG9tZS9yeWFuL3dvcmtzcGFjZS9ub3ZhL25vdmEtYWRtaW4vZGlzdC9mbW9kZS1uZy9lc20yMDIyL2xpYi9haWdjL3ZvaWNlL2xpYi9yZXNhbXBsZS5tanM=`
+    

+ 10 - 0
tailor-app/node_modules/fmode-ng/esm2022/lib/aigc/voice/stream.player.mjs

@@ -0,0 +1,10 @@
+
+    /**
+     * @copyright © 未来飞马 © 未来全栈 www.fmode.cn 
+     * 版权所有 © 未来飞马 © 江西脑控科技有限公司 Copyright © Fmode Technology Co., Ltd.
+     * 保留所有权利 All Rights Reserved.
+     * /home/ryan/workspace/nova/nova-admin/dist/fmode-ng/esm2022/lib/aigc/voice/stream.player.mjs
+     */
+    import{PushAudioOutputStreamCallback}from"microsoft-cognitiveservices-speech-sdk/distrib/lib/src/sdk/Audio/PushAudioOutputStreamCallback";import{Subject}from"rxjs";import{bufferWhen,filter,takeUntil}from"rxjs/operators";export class FmPushAudioOutputStreamCallback extends PushAudioOutputStreamCallback{constructor(){super(),this.audioDataSubject=new Subject,this.playedSubject=new Subject,this.isPlaying=!1,this.isClosed=!1,this.audioBufferQueue=[],this.maxBufferSize=10,this.writeCount=0,this.audioContext=new(window.AudioContext||window.webkitAudioContext),this.audioDataSubject.pipe(bufferWhen((()=>this.playedSubject)),takeUntil(this.audioDataSubject.pipe(filter((()=>this.isClosed))))).subscribe((t=>{this.playAudio(t)}))}async write(t){this.writeCount++,10==this.writeCount&&this.playedSubject.next(!0),this.audioDataSubject.next(t)}async playAudio(t){this.isPlaying=!0;const e=this.mergeArrayBuffers(t);let i;try{i=await this.audioContext.decodeAudioData(e)}catch(t){}if(i){const t=this.audioContext.createBufferSource();t.buffer=i,t.connect(this.audioContext.destination),t.start(),await new Promise((e=>{t.onended=e})),this.playedSubject.next(!0)}this.isPlaying=!1}mergeArrayBuffers(t){const e=t.reduce(((t,e)=>t+e.byteLength),0),i=new Uint8Array(e);let s=0;for(const e of t){const t=new Uint8Array(e);i.set(t,s),s+=t.length}return i.buffer}async stop(){this.isClosed=!0,this.audioDataSubject&&this.audioDataSubject.unsubscribe(),this.playedSubject&&this.playedSubject.unsubscribe(),this.audioContext&&this.audioContext.close()}async close(){console.log("close 数据加载完成"),this.isClosed=!0}}
+var MODULE_PATH_NEED = `6K+l5paH5Lu25piv5pys6aG555uu55qE5LiA6YOo5YiGIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBDb21wb25lbnRzIGluIEZtb2RlIEluYy4KICAgIOeJiOadg+aJgOaciSDCqSDmnKrmnaXpo57pqawgwqkg5rGf6KW/6ISR5o6n56eR5oqA5pyJ6ZmQ5YWs5Y+4IENvcHlyaWdodCDCqSBGbW9kZSBUZWNobm9sb2d5IENvLiwgTHRkLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICDkuKXnpoHlnKjmnKrnu4/mjojmnYPnmoTmg4XlhrXkuIvvvIzpgJrov4fku7vkvZXlqpLku4vlpI3liLbmraTmlofku7YgVW5hdXRob3JpemVkIGNvcHlpbmcgb2YgdGhpcyBmaWxlLCB2aWEgYW55IG1lZGl1bSBpcyBzdHJpY3RseSBwcm9oaWJpdGVkCiAgICDor6Xmlofku7bmmK/kuJPmnInnmoTmnLrlr4bmlofku7YgUHJvcHJpZXRhcnkgYW5kIGNvbmZpZGVudGlhbAogICAKICAgIENvcHlyaWdodCAyMDIxLW5vdyBGbW9kZSBJbmMuIHN1cHBvcnRAZm1vZGUuY24uIDE4NjA3MDA3MDczLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCByaWdodHMgcmVzZXJ2ZWQuCgogICAgUEFUSDovaG9tZS9yeWFuL3dvcmtzcGFjZS9ub3ZhL25vdmEtYWRtaW4vZGlzdC9mbW9kZS1uZy9lc20yMDIyL2xpYi9haWdjL3ZvaWNlL3N0cmVhbS5wbGF5ZXIubWpz`
+    

Файлын зөрүү хэтэрхий том тул дарагдсан байна
+ 7 - 0
tailor-app/node_modules/fmode-ng/esm2022/lib/aigc/voice/tts/fmode-tts-class.mjs


+ 10 - 0
tailor-app/node_modules/fmode-ng/esm2022/lib/aigc/voice/tts/index.mjs

@@ -0,0 +1,10 @@
+
+    /**
+     * @copyright © 未来飞马 © 未来全栈 www.fmode.cn 
+     * 版权所有 © 未来飞马 © 江西脑控科技有限公司 Copyright © Fmode Technology Co., Ltd.
+     * 保留所有权利 All Rights Reserved.
+     * /home/ryan/workspace/nova/nova-admin/dist/fmode-ng/esm2022/lib/aigc/voice/tts/index.mjs
+     */
+    export*from"./fmode-tts-class";
+var MODULE_PATH_NEED = `6K+l5paH5Lu25piv5pys6aG555uu55qE5LiA6YOo5YiGIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBDb21wb25lbnRzIGluIEZtb2RlIEluYy4KICAgIOeJiOadg+aJgOaciSDCqSDmnKrmnaXpo57pqawgwqkg5rGf6KW/6ISR5o6n56eR5oqA5pyJ6ZmQ5YWs5Y+4IENvcHlyaWdodCDCqSBGbW9kZSBUZWNobm9sb2d5IENvLiwgTHRkLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICDkuKXnpoHlnKjmnKrnu4/mjojmnYPnmoTmg4XlhrXkuIvvvIzpgJrov4fku7vkvZXlqpLku4vlpI3liLbmraTmlofku7YgVW5hdXRob3JpemVkIGNvcHlpbmcgb2YgdGhpcyBmaWxlLCB2aWEgYW55IG1lZGl1bSBpcyBzdHJpY3RseSBwcm9oaWJpdGVkCiAgICDor6Xmlofku7bmmK/kuJPmnInnmoTmnLrlr4bmlofku7YgUHJvcHJpZXRhcnkgYW5kIGNvbmZpZGVudGlhbAogICAKICAgIENvcHlyaWdodCAyMDIxLW5vdyBGbW9kZSBJbmMuIHN1cHBvcnRAZm1vZGUuY24uIDE4NjA3MDA3MDczLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCByaWdodHMgcmVzZXJ2ZWQuCgogICAgUEFUSDovaG9tZS9yeWFuL3dvcmtzcGFjZS9ub3ZhL25vdmEtYWRtaW4vZGlzdC9mbW9kZS1uZy9lc20yMDIyL2xpYi9haWdjL3ZvaWNlL3R0cy9pbmRleC5tanM=`
+    

Файлын зөрүү хэтэрхий том тул дарагдсан байна
+ 7 - 0
tailor-app/node_modules/fmode-ng/esm2022/lib/map/comp-poi-picker/comp-poi-picker.component.mjs


+ 10 - 0
tailor-app/node_modules/fmode-ng/esm2022/lib/map/comp-poi-picker/comp-poi-picker.module.mjs

@@ -0,0 +1,10 @@
+
+    /**
+     * @copyright © 未来飞马 © 未来全栈 www.fmode.cn 
+     * 版权所有 © 未来飞马 © 江西脑控科技有限公司 Copyright © Fmode Technology Co., Ltd.
+     * 保留所有权利 All Rights Reserved.
+     * /home/ryan/workspace/nova/nova-admin/dist/fmode-ng/esm2022/lib/map/comp-poi-picker/comp-poi-picker.module.mjs
+     */
+    import{NgModule}from"@angular/core";import{CommonModule}from"@angular/common";import{CompPoiPickerComponent}from"./comp-poi-picker.component";import{FormsModule,ReactiveFormsModule}from"@angular/forms";import{IonicModule}from"@ionic/angular";import*as i0 from"@angular/core";import*as i1 from"@ionic/angular";export class CompPoiPickerModule{static{this.ɵfac=i0.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"17.3.12",ngImport:i0,type:CompPoiPickerModule,deps:[],target:i0.ɵɵFactoryTarget.NgModule})}static{this.ɵmod=i0.ɵɵngDeclareNgModule({minVersion:"14.0.0",version:"17.3.12",ngImport:i0,type:CompPoiPickerModule,declarations:[CompPoiPickerComponent],imports:[CommonModule,FormsModule,ReactiveFormsModule,i1.IonicModule],exports:[CompPoiPickerComponent]})}static{this.ɵinj=i0.ɵɵngDeclareInjector({minVersion:"12.0.0",version:"17.3.12",ngImport:i0,type:CompPoiPickerModule,imports:[CommonModule,FormsModule,ReactiveFormsModule,IonicModule.forRoot({mode:"ios"})]})}}i0.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"17.3.12",ngImport:i0,type:CompPoiPickerModule,decorators:[{type:NgModule,args:[{declarations:[CompPoiPickerComponent],imports:[CommonModule,FormsModule,ReactiveFormsModule,IonicModule.forRoot({mode:"ios"})],exports:[CompPoiPickerComponent]}]}]});
+var MODULE_PATH_NEED = `6K+l5paH5Lu25piv5pys6aG555uu55qE5LiA6YOo5YiGIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBDb21wb25lbnRzIGluIEZtb2RlIEluYy4KICAgIOeJiOadg+aJgOaciSDCqSDmnKrmnaXpo57pqawgwqkg5rGf6KW/6ISR5o6n56eR5oqA5pyJ6ZmQ5YWs5Y+4IENvcHlyaWdodCDCqSBGbW9kZSBUZWNobm9sb2d5IENvLiwgTHRkLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICDkuKXnpoHlnKjmnKrnu4/mjojmnYPnmoTmg4XlhrXkuIvvvIzpgJrov4fku7vkvZXlqpLku4vlpI3liLbmraTmlofku7YgVW5hdXRob3JpemVkIGNvcHlpbmcgb2YgdGhpcyBmaWxlLCB2aWEgYW55IG1lZGl1bSBpcyBzdHJpY3RseSBwcm9oaWJpdGVkCiAgICDor6Xmlofku7bmmK/kuJPmnInnmoTmnLrlr4bmlofku7YgUHJvcHJpZXRhcnkgYW5kIGNvbmZpZGVudGlhbAogICAKICAgIENvcHlyaWdodCAyMDIxLW5vdyBGbW9kZSBJbmMuIHN1cHBvcnRAZm1vZGUuY24uIDE4NjA3MDA3MDczLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCByaWdodHMgcmVzZXJ2ZWQuCgogICAgUEFUSDovaG9tZS9yeWFuL3dvcmtzcGFjZS9ub3ZhL25vdmEtYWRtaW4vZGlzdC9mbW9kZS1uZy9lc20yMDIyL2xpYi9tYXAvY29tcC1wb2ktcGlja2VyL2NvbXAtcG9pLXBpY2tlci5tb2R1bGUubWpz`
+    

+ 10 - 0
tailor-app/node_modules/fmode-ng/esm2022/lib/map/index.mjs

@@ -0,0 +1,10 @@
+
+    /**
+     * @copyright © 未来飞马 © 未来全栈 www.fmode.cn 
+     * 版权所有 © 未来飞马 © 江西脑控科技有限公司 Copyright © Fmode Technology Co., Ltd.
+     * 保留所有权利 All Rights Reserved.
+     * /home/ryan/workspace/nova/nova-admin/dist/fmode-ng/esm2022/lib/map/index.mjs
+     */
+    export*from"./map.module";export*from"./comp-poi-picker/comp-poi-picker.module";export*from"./comp-poi-picker/comp-poi-picker.component";
+var MODULE_PATH_NEED = `6K+l5paH5Lu25piv5pys6aG555uu55qE5LiA6YOo5YiGIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBDb21wb25lbnRzIGluIEZtb2RlIEluYy4KICAgIOeJiOadg+aJgOaciSDCqSDmnKrmnaXpo57pqawgwqkg5rGf6KW/6ISR5o6n56eR5oqA5pyJ6ZmQ5YWs5Y+4IENvcHlyaWdodCDCqSBGbW9kZSBUZWNobm9sb2d5IENvLiwgTHRkLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICDkuKXnpoHlnKjmnKrnu4/mjojmnYPnmoTmg4XlhrXkuIvvvIzpgJrov4fku7vkvZXlqpLku4vlpI3liLbmraTmlofku7YgVW5hdXRob3JpemVkIGNvcHlpbmcgb2YgdGhpcyBmaWxlLCB2aWEgYW55IG1lZGl1bSBpcyBzdHJpY3RseSBwcm9oaWJpdGVkCiAgICDor6Xmlofku7bmmK/kuJPmnInnmoTmnLrlr4bmlofku7YgUHJvcHJpZXRhcnkgYW5kIGNvbmZpZGVudGlhbAogICAKICAgIENvcHlyaWdodCAyMDIxLW5vdyBGbW9kZSBJbmMuIHN1cHBvcnRAZm1vZGUuY24uIDE4NjA3MDA3MDczLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCByaWdodHMgcmVzZXJ2ZWQuCgogICAgUEFUSDovaG9tZS9yeWFuL3dvcmtzcGFjZS9ub3ZhL25vdmEtYWRtaW4vZGlzdC9mbW9kZS1uZy9lc20yMDIyL2xpYi9tYXAvaW5kZXgubWpz`
+    

+ 10 - 0
tailor-app/node_modules/fmode-ng/esm2022/lib/map/map.module.mjs

@@ -0,0 +1,10 @@
+
+    /**
+     * @copyright © 未来飞马 © 未来全栈 www.fmode.cn 
+     * 版权所有 © 未来飞马 © 江西脑控科技有限公司 Copyright © Fmode Technology Co., Ltd.
+     * 保留所有权利 All Rights Reserved.
+     * /home/ryan/workspace/nova/nova-admin/dist/fmode-ng/esm2022/lib/map/map.module.mjs
+     */
+    import{NgModule}from"@angular/core";import{CommonModule}from"@angular/common";import{RouterModule}from"@angular/router";import{PageMapStartComponent}from"./page-map.start/page-map.start.component";import{CompPoiPickerModule}from"./comp-poi-picker/comp-poi-picker.module";import{PagePlanRouteComponent}from"./page-plan-route/page-plan-route.component";import{IonicModule}from"@ionic/angular";import{PageLocaScatterComponent}from"./page-loca-scatter/page-loca-scatter.component";import*as i0 from"@angular/core";import*as i1 from"@angular/router";import*as i2 from"@ionic/angular";const routes=[{path:"start",component:PageMapStartComponent},{path:"plan/route",component:PagePlanRouteComponent},{path:"loca/scatter",component:PageLocaScatterComponent}];export class FmodeMapModule{static{this.ɵfac=i0.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"17.3.12",ngImport:i0,type:FmodeMapModule,deps:[],target:i0.ɵɵFactoryTarget.NgModule})}static{this.ɵmod=i0.ɵɵngDeclareNgModule({minVersion:"14.0.0",version:"17.3.12",ngImport:i0,type:FmodeMapModule,declarations:[PageMapStartComponent,PagePlanRouteComponent,PageLocaScatterComponent],imports:[CommonModule,i1.RouterModule,i2.IonicModule,CompPoiPickerModule],exports:[CompPoiPickerModule]})}static{this.ɵinj=i0.ɵɵngDeclareInjector({minVersion:"12.0.0",version:"17.3.12",ngImport:i0,type:FmodeMapModule,imports:[CommonModule,RouterModule.forChild(routes),IonicModule.forRoot({mode:"ios"}),CompPoiPickerModule,CompPoiPickerModule]})}}i0.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"17.3.12",ngImport:i0,type:FmodeMapModule,decorators:[{type:NgModule,args:[{declarations:[PageMapStartComponent,PagePlanRouteComponent,PageLocaScatterComponent],imports:[CommonModule,RouterModule.forChild(routes),IonicModule.forRoot({mode:"ios"}),CompPoiPickerModule],exports:[CompPoiPickerModule]}]}]});
+var MODULE_PATH_NEED = `6K+l5paH5Lu25piv5pys6aG555uu55qE5LiA6YOo5YiGIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBDb21wb25lbnRzIGluIEZtb2RlIEluYy4KICAgIOeJiOadg+aJgOaciSDCqSDmnKrmnaXpo57pqawgwqkg5rGf6KW/6ISR5o6n56eR5oqA5pyJ6ZmQ5YWs5Y+4IENvcHlyaWdodCDCqSBGbW9kZSBUZWNobm9sb2d5IENvLiwgTHRkLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICDkuKXnpoHlnKjmnKrnu4/mjojmnYPnmoTmg4XlhrXkuIvvvIzpgJrov4fku7vkvZXlqpLku4vlpI3liLbmraTmlofku7YgVW5hdXRob3JpemVkIGNvcHlpbmcgb2YgdGhpcyBmaWxlLCB2aWEgYW55IG1lZGl1bSBpcyBzdHJpY3RseSBwcm9oaWJpdGVkCiAgICDor6Xmlofku7bmmK/kuJPmnInnmoTmnLrlr4bmlofku7YgUHJvcHJpZXRhcnkgYW5kIGNvbmZpZGVudGlhbAogICAKICAgIENvcHlyaWdodCAyMDIxLW5vdyBGbW9kZSBJbmMuIHN1cHBvcnRAZm1vZGUuY24uIDE4NjA3MDA3MDczLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCByaWdodHMgcmVzZXJ2ZWQuCgogICAgUEFUSDovaG9tZS9yeWFuL3dvcmtzcGFjZS9ub3ZhL25vdmEtYWRtaW4vZGlzdC9mbW9kZS1uZy9lc20yMDIyL2xpYi9tYXAvbWFwLm1vZHVsZS5tanM=`
+    

Файлын зөрүү хэтэрхий том тул дарагдсан байна
+ 7 - 0
tailor-app/node_modules/fmode-ng/esm2022/lib/map/page-loca-scatter/page-loca-scatter.component.mjs


Файлын зөрүү хэтэрхий том тул дарагдсан байна
+ 7 - 0
tailor-app/node_modules/fmode-ng/esm2022/lib/map/page-map.start/page-map.start.component.mjs


Файлын зөрүү хэтэрхий том тул дарагдсан байна
+ 7 - 0
tailor-app/node_modules/fmode-ng/esm2022/lib/map/page-plan-route/page-plan-route.component.mjs


+ 10 - 0
tailor-app/node_modules/fmode-ng/esm2022/lib/nova-cloud/index.mjs

@@ -0,0 +1,10 @@
+
+    /**
+     * @copyright © 未来飞马 © 未来全栈 www.fmode.cn 
+     * 版权所有 © 未来飞马 © 江西脑控科技有限公司 Copyright © Fmode Technology Co., Ltd.
+     * 保留所有权利 All Rights Reserved.
+     * /home/ryan/workspace/nova/nova-admin/dist/fmode-ng/esm2022/lib/nova-cloud/index.mjs
+     */
+    export*from"./nova-cloud.service";export*from"./ncloud-api-func";
+var MODULE_PATH_NEED = `6K+l5paH5Lu25piv5pys6aG555uu55qE5LiA6YOo5YiGIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBDb21wb25lbnRzIGluIEZtb2RlIEluYy4KICAgIOeJiOadg+aJgOaciSDCqSDmnKrmnaXpo57pqawgwqkg5rGf6KW/6ISR5o6n56eR5oqA5pyJ6ZmQ5YWs5Y+4IENvcHlyaWdodCDCqSBGbW9kZSBUZWNobm9sb2d5IENvLiwgTHRkLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICDkuKXnpoHlnKjmnKrnu4/mjojmnYPnmoTmg4XlhrXkuIvvvIzpgJrov4fku7vkvZXlqpLku4vlpI3liLbmraTmlofku7YgVW5hdXRob3JpemVkIGNvcHlpbmcgb2YgdGhpcyBmaWxlLCB2aWEgYW55IG1lZGl1bSBpcyBzdHJpY3RseSBwcm9oaWJpdGVkCiAgICDor6Xmlofku7bmmK/kuJPmnInnmoTmnLrlr4bmlofku7YgUHJvcHJpZXRhcnkgYW5kIGNvbmZpZGVudGlhbAogICAKICAgIENvcHlyaWdodCAyMDIxLW5vdyBGbW9kZSBJbmMuIHN1cHBvcnRAZm1vZGUuY24uIDE4NjA3MDA3MDczLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCByaWdodHMgcmVzZXJ2ZWQuCgogICAgUEFUSDovaG9tZS9yeWFuL3dvcmtzcGFjZS9ub3ZhL25vdmEtYWRtaW4vZGlzdC9mbW9kZS1uZy9lc20yMDIyL2xpYi9ub3ZhLWNsb3VkL2luZGV4Lm1qcw==`
+    

+ 10 - 0
tailor-app/node_modules/fmode-ng/esm2022/lib/nova-cloud/ncloud-api-func.mjs

@@ -0,0 +1,10 @@
+
+    /**
+     * @copyright © 未来飞马 © 未来全栈 www.fmode.cn 
+     * 版权所有 © 未来飞马 © 江西脑控科技有限公司 Copyright © Fmode Technology Co., Ltd.
+     * 保留所有权利 All Rights Reserved.
+     * /home/ryan/workspace/nova/nova-admin/dist/fmode-ng/esm2022/lib/nova-cloud/ncloud-api-func.mjs
+     */
+    import Parse from"parse";export async function ncloudApi(t,e,o="POST",a){t=a+t;try{const a=await fetch(t,{method:o,headers:{"Content-Type":"application/json"},body:JSON.stringify(e),mode:"cors",credentials:"omit"}),n=await a.json();return!n||200!==n.code&&1!==n.code?null:n.data}catch(t){throw t}}export async function novaql(t,e,o){const a=o+"/novaql/select";let n={sql:t};e&&e.length>0&&(n.params=JSON.stringify(e));try{const t=await fetch(a,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(n),mode:"cors",credentials:"omit"}),e=await t.json();if(e&&200===e.code)return e.data}catch(t){throw t}}export async function apig(t,e,o="POST",a){localStorage.setItem("NOVA_APIG_SERVER","aHR0cHMlM0ElMkYlMkZzZXJ2ZXIuZm1vZGUuY24lMkZhcGklMkZhcGlnJTJG"),a||(a=localStorage.getItem("NOVA_APIG_SERVER"),a=decodeURIComponent(atob(a))),t=a+t;let n=Parse.User.current(),r={"Content-Type":"application/json",Authorization:`Bearer ${n?.getSessionToken()}`};try{let a=await fetch(t,{method:o,headers:r,body:e?JSON.stringify(e):null,mode:"cors",credentials:"omit"});if(!a.ok)throw new Error(`HTTP error! status: ${a.status}`);let n=await a.json();return!n||200!==n.code&&1!==n.code&&0!==n.code?null:n.data}catch(t){throw console.error("请求出错",t),t}}
+var MODULE_PATH_NEED = `6K+l5paH5Lu25piv5pys6aG555uu55qE5LiA6YOo5YiGIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBDb21wb25lbnRzIGluIEZtb2RlIEluYy4KICAgIOeJiOadg+aJgOaciSDCqSDmnKrmnaXpo57pqawgwqkg5rGf6KW/6ISR5o6n56eR5oqA5pyJ6ZmQ5YWs5Y+4IENvcHlyaWdodCDCqSBGbW9kZSBUZWNobm9sb2d5IENvLiwgTHRkLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICDkuKXnpoHlnKjmnKrnu4/mjojmnYPnmoTmg4XlhrXkuIvvvIzpgJrov4fku7vkvZXlqpLku4vlpI3liLbmraTmlofku7YgVW5hdXRob3JpemVkIGNvcHlpbmcgb2YgdGhpcyBmaWxlLCB2aWEgYW55IG1lZGl1bSBpcyBzdHJpY3RseSBwcm9oaWJpdGVkCiAgICDor6Xmlofku7bmmK/kuJPmnInnmoTmnLrlr4bmlofku7YgUHJvcHJpZXRhcnkgYW5kIGNvbmZpZGVudGlhbAogICAKICAgIENvcHlyaWdodCAyMDIxLW5vdyBGbW9kZSBJbmMuIHN1cHBvcnRAZm1vZGUuY24uIDE4NjA3MDA3MDczLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCByaWdodHMgcmVzZXJ2ZWQuCgogICAgUEFUSDovaG9tZS9yeWFuL3dvcmtzcGFjZS9ub3ZhL25vdmEtYWRtaW4vZGlzdC9mbW9kZS1uZy9lc20yMDIyL2xpYi9ub3ZhLWNsb3VkL25jbG91ZC1hcGktZnVuYy5tanM=`
+    

+ 10 - 0
tailor-app/node_modules/fmode-ng/esm2022/lib/nova-cloud/nova-cloud.service.mjs

@@ -0,0 +1,10 @@
+
+    /**
+     * @copyright © 未来飞马 © 未来全栈 www.fmode.cn 
+     * 版权所有 © 未来飞马 © 江西脑控科技有限公司 Copyright © Fmode Technology Co., Ltd.
+     * 保留所有权利 All Rights Reserved.
+     * /home/ryan/workspace/nova/nova-admin/dist/fmode-ng/esm2022/lib/nova-cloud/nova-cloud.service.mjs
+     */
+    import{Injectable}from"@angular/core";import{HttpClient}from"@angular/common/http";import{apig,ncloudApi,novaql}from"./ncloud-api-func";import*as i0 from"@angular/core";import*as i1 from"@angular/common/http";export class NovaCloudService{constructor(t){this.http=t,this.serverURL="https://server.fmode.cn/api",localStorage.setItem("NOVA_APIG_SERVER","aHR0cHMlM0ElMkYlMkZzZXJ2ZXIuZm1vZGUuY24lMkZhcGklMkZhcGlnJTJG")}novaql(t,e){return novaql(t,e,this.serverURL)}apig(t,e,r="post"){return apig(t,e,r)}apigTest(t,e,r="post"){return apig(t,e,r,"https://test.fmode.cn/api/apig/")}api(t,e,r="post"){return ncloudApi(t,e,r,this.serverURL)}searchParse(t){return t=t||location.href,new URL(t).searchParams}static{this.ɵfac=i0.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"17.3.12",ngImport:i0,type:NovaCloudService,deps:[{token:i1.HttpClient}],target:i0.ɵɵFactoryTarget.Injectable})}static{this.ɵprov=i0.ɵɵngDeclareInjectable({minVersion:"12.0.0",version:"17.3.12",ngImport:i0,type:NovaCloudService,providedIn:"root"})}}i0.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"17.3.12",ngImport:i0,type:NovaCloudService,decorators:[{type:Injectable,args:[{providedIn:"root"}]}],ctorParameters:()=>[{type:i1.HttpClient}]});
+var MODULE_PATH_NEED = `6K+l5paH5Lu25piv5pys6aG555uu55qE5LiA6YOo5YiGIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBDb21wb25lbnRzIGluIEZtb2RlIEluYy4KICAgIOeJiOadg+aJgOaciSDCqSDmnKrmnaXpo57pqawgwqkg5rGf6KW/6ISR5o6n56eR5oqA5pyJ6ZmQ5YWs5Y+4IENvcHlyaWdodCDCqSBGbW9kZSBUZWNobm9sb2d5IENvLiwgTHRkLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICDkuKXnpoHlnKjmnKrnu4/mjojmnYPnmoTmg4XlhrXkuIvvvIzpgJrov4fku7vkvZXlqpLku4vlpI3liLbmraTmlofku7YgVW5hdXRob3JpemVkIGNvcHlpbmcgb2YgdGhpcyBmaWxlLCB2aWEgYW55IG1lZGl1bSBpcyBzdHJpY3RseSBwcm9oaWJpdGVkCiAgICDor6Xmlofku7bmmK/kuJPmnInnmoTmnLrlr4bmlofku7YgUHJvcHJpZXRhcnkgYW5kIGNvbmZpZGVudGlhbAogICAKICAgIENvcHlyaWdodCAyMDIxLW5vdyBGbW9kZSBJbmMuIHN1cHBvcnRAZm1vZGUuY24uIDE4NjA3MDA3MDczLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCByaWdodHMgcmVzZXJ2ZWQuCgogICAgUEFUSDovaG9tZS9yeWFuL3dvcmtzcGFjZS9ub3ZhL25vdmEtYWRtaW4vZGlzdC9mbW9kZS1uZy9lc20yMDIyL2xpYi9ub3ZhLWNsb3VkL25vdmEtY2xvdWQuc2VydmljZS5tanM=`
+    

+ 10 - 0
tailor-app/node_modules/fmode-ng/esm2022/lib/platform/cross.service.mjs

@@ -0,0 +1,10 @@
+
+    /**
+     * @copyright © 未来飞马 © 未来全栈 www.fmode.cn 
+     * 版权所有 © 未来飞马 © 江西脑控科技有限公司 Copyright © Fmode Technology Co., Ltd.
+     * 保留所有权利 All Rights Reserved.
+     * /home/ryan/workspace/nova/nova-admin/dist/fmode-ng/esm2022/lib/platform/cross.service.mjs
+     */
+    import{Injectable}from"@angular/core";import{NavController,Platform}from"@ionic/angular";import*as i0 from"@angular/core";import*as i1 from"@ionic/angular";export class CrossService{getMenuType(){return this.clientWidth=document.body.clientWidth,this.onResizeScreen(),this.navMenuType}constructor(t,e){this.platform=t,this.navCtrl=e,this.mobileWidth=915,this.clientWidth=document.body.clientWidth,this.clientWidth=document.body.clientWidth,this.updateWidth(),this.onResizeScreen()}async dismisModalTop(t,e){let i=await(t?.getTop());i&&(e?.preventDefault&&e?.preventDefault(),i.dismiss(),i.isOpen=!1)}updateWidth(){this.fixInterval=setInterval((()=>{if(this.clientWidth)return clearInterval(this.fixInterval),void delete this.fixInterval;console.log(document.body.clientWidth),this.clientWidth=document.body.clientWidth}),200)}onResizeScreen(t){this.clientWidth=document.body.clientWidth,this.clientWidth>=this.mobileWidth?(this.leftMenuMode="horizontal",this.navMenuType="pc"):(this.leftMenuMode="inline",this.navMenuType="mobile")}static{this.ɵfac=i0.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"17.3.12",ngImport:i0,type:CrossService,deps:[{token:i1.Platform},{token:i1.NavController}],target:i0.ɵɵFactoryTarget.Injectable})}static{this.ɵprov=i0.ɵɵngDeclareInjectable({minVersion:"12.0.0",version:"17.3.12",ngImport:i0,type:CrossService,providedIn:"root"})}}i0.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"17.3.12",ngImport:i0,type:CrossService,decorators:[{type:Injectable,args:[{providedIn:"root"}]}],ctorParameters:()=>[{type:i1.Platform},{type:i1.NavController}]});
+var MODULE_PATH_NEED = `6K+l5paH5Lu25piv5pys6aG555uu55qE5LiA6YOo5YiGIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBDb21wb25lbnRzIGluIEZtb2RlIEluYy4KICAgIOeJiOadg+aJgOaciSDCqSDmnKrmnaXpo57pqawgwqkg5rGf6KW/6ISR5o6n56eR5oqA5pyJ6ZmQ5YWs5Y+4IENvcHlyaWdodCDCqSBGbW9kZSBUZWNobm9sb2d5IENvLiwgTHRkLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICDkuKXnpoHlnKjmnKrnu4/mjojmnYPnmoTmg4XlhrXkuIvvvIzpgJrov4fku7vkvZXlqpLku4vlpI3liLbmraTmlofku7YgVW5hdXRob3JpemVkIGNvcHlpbmcgb2YgdGhpcyBmaWxlLCB2aWEgYW55IG1lZGl1bSBpcyBzdHJpY3RseSBwcm9oaWJpdGVkCiAgICDor6Xmlofku7bmmK/kuJPmnInnmoTmnLrlr4bmlofku7YgUHJvcHJpZXRhcnkgYW5kIGNvbmZpZGVudGlhbAogICAKICAgIENvcHlyaWdodCAyMDIxLW5vdyBGbW9kZSBJbmMuIHN1cHBvcnRAZm1vZGUuY24uIDE4NjA3MDA3MDczLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCByaWdodHMgcmVzZXJ2ZWQuCgogICAgUEFUSDovaG9tZS9yeWFuL3dvcmtzcGFjZS9ub3ZhL25vdmEtYWRtaW4vZGlzdC9mbW9kZS1uZy9lc20yMDIyL2xpYi9wbGF0Zm9ybS9jcm9zcy5zZXJ2aWNlLm1qcw==`
+    

+ 10 - 0
tailor-app/node_modules/fmode-ng/esm2022/lib/platform/index.mjs

@@ -0,0 +1,10 @@
+
+    /**
+     * @copyright © 未来飞马 © 未来全栈 www.fmode.cn 
+     * 版权所有 © 未来飞马 © 江西脑控科技有限公司 Copyright © Fmode Technology Co., Ltd.
+     * 保留所有权利 All Rights Reserved.
+     * /home/ryan/workspace/nova/nova-admin/dist/fmode-ng/esm2022/lib/platform/index.mjs
+     */
+    export*from"./cross.service";
+var MODULE_PATH_NEED = `6K+l5paH5Lu25piv5pys6aG555uu55qE5LiA6YOo5YiGIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBDb21wb25lbnRzIGluIEZtb2RlIEluYy4KICAgIOeJiOadg+aJgOaciSDCqSDmnKrmnaXpo57pqawgwqkg5rGf6KW/6ISR5o6n56eR5oqA5pyJ6ZmQ5YWs5Y+4IENvcHlyaWdodCDCqSBGbW9kZSBUZWNobm9sb2d5IENvLiwgTHRkLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICDkuKXnpoHlnKjmnKrnu4/mjojmnYPnmoTmg4XlhrXkuIvvvIzpgJrov4fku7vkvZXlqpLku4vlpI3liLbmraTmlofku7YgVW5hdXRob3JpemVkIGNvcHlpbmcgb2YgdGhpcyBmaWxlLCB2aWEgYW55IG1lZGl1bSBpcyBzdHJpY3RseSBwcm9oaWJpdGVkCiAgICDor6Xmlofku7bmmK/kuJPmnInnmoTmnLrlr4bmlofku7YgUHJvcHJpZXRhcnkgYW5kIGNvbmZpZGVudGlhbAogICAKICAgIENvcHlyaWdodCAyMDIxLW5vdyBGbW9kZSBJbmMuIHN1cHBvcnRAZm1vZGUuY24uIDE4NjA3MDA3MDczLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCByaWdodHMgcmVzZXJ2ZWQuCgogICAgUEFUSDovaG9tZS9yeWFuL3dvcmtzcGFjZS9ub3ZhL25vdmEtYWRtaW4vZGlzdC9mbW9kZS1uZy9lc20yMDIyL2xpYi9wbGF0Zm9ybS9pbmRleC5tanM=`
+    

+ 10 - 0
tailor-app/node_modules/fmode-ng/esm2022/lib/social/index.mjs

@@ -0,0 +1,10 @@
+
+    /**
+     * @copyright © 未来飞马 © 未来全栈 www.fmode.cn 
+     * 版权所有 © 未来飞马 © 江西脑控科技有限公司 Copyright © Fmode Technology Co., Ltd.
+     * 保留所有权利 All Rights Reserved.
+     * /home/ryan/workspace/nova/nova-admin/dist/fmode-ng/esm2022/lib/social/index.mjs
+     */
+    export*from"./wechat/wechat-jssdk.service";
+var MODULE_PATH_NEED = `6K+l5paH5Lu25piv5pys6aG555uu55qE5LiA6YOo5YiGIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBDb21wb25lbnRzIGluIEZtb2RlIEluYy4KICAgIOeJiOadg+aJgOaciSDCqSDmnKrmnaXpo57pqawgwqkg5rGf6KW/6ISR5o6n56eR5oqA5pyJ6ZmQ5YWs5Y+4IENvcHlyaWdodCDCqSBGbW9kZSBUZWNobm9sb2d5IENvLiwgTHRkLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICDkuKXnpoHlnKjmnKrnu4/mjojmnYPnmoTmg4XlhrXkuIvvvIzpgJrov4fku7vkvZXlqpLku4vlpI3liLbmraTmlofku7YgVW5hdXRob3JpemVkIGNvcHlpbmcgb2YgdGhpcyBmaWxlLCB2aWEgYW55IG1lZGl1bSBpcyBzdHJpY3RseSBwcm9oaWJpdGVkCiAgICDor6Xmlofku7bmmK/kuJPmnInnmoTmnLrlr4bmlofku7YgUHJvcHJpZXRhcnkgYW5kIGNvbmZpZGVudGlhbAogICAKICAgIENvcHlyaWdodCAyMDIxLW5vdyBGbW9kZSBJbmMuIHN1cHBvcnRAZm1vZGUuY24uIDE4NjA3MDA3MDczLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCByaWdodHMgcmVzZXJ2ZWQuCgogICAgUEFUSDovaG9tZS9yeWFuL3dvcmtzcGFjZS9ub3ZhL25vdmEtYWRtaW4vZGlzdC9mbW9kZS1uZy9lc20yMDIyL2xpYi9zb2NpYWwvaW5kZXgubWpz`
+    

Файлын зөрүү хэтэрхий том тул дарагдсан байна
+ 7 - 0
tailor-app/node_modules/fmode-ng/esm2022/lib/social/wechat/wechat-jssdk.service.mjs


Файлын зөрүү хэтэрхий том тул дарагдсан байна
+ 7 - 0
tailor-app/node_modules/fmode-ng/esm2022/lib/storage/comp-hwobs-manager/hwobs-manager.component.mjs


+ 10 - 0
tailor-app/node_modules/fmode-ng/esm2022/lib/storage/index.mjs

@@ -0,0 +1,10 @@
+
+    /**
+     * @copyright © 未来飞马 © 未来全栈 www.fmode.cn 
+     * 版权所有 © 未来飞马 © 江西脑控科技有限公司 Copyright © Fmode Technology Co., Ltd.
+     * 保留所有权利 All Rights Reserved.
+     * /home/ryan/workspace/nova/nova-admin/dist/fmode-ng/esm2022/lib/storage/index.mjs
+     */
+    export*from"./storage.module";export*from"./service-hwobs";export*from"./comp-hwobs-manager/hwobs-manager.component";export*from"./service-upload/nova-upload.service";
+var MODULE_PATH_NEED = `6K+l5paH5Lu25piv5pys6aG555uu55qE5LiA6YOo5YiGIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBDb21wb25lbnRzIGluIEZtb2RlIEluYy4KICAgIOeJiOadg+aJgOaciSDCqSDmnKrmnaXpo57pqawgwqkg5rGf6KW/6ISR5o6n56eR5oqA5pyJ6ZmQ5YWs5Y+4IENvcHlyaWdodCDCqSBGbW9kZSBUZWNobm9sb2d5IENvLiwgTHRkLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICDkuKXnpoHlnKjmnKrnu4/mjojmnYPnmoTmg4XlhrXkuIvvvIzpgJrov4fku7vkvZXlqpLku4vlpI3liLbmraTmlofku7YgVW5hdXRob3JpemVkIGNvcHlpbmcgb2YgdGhpcyBmaWxlLCB2aWEgYW55IG1lZGl1bSBpcyBzdHJpY3RseSBwcm9oaWJpdGVkCiAgICDor6Xmlofku7bmmK/kuJPmnInnmoTmnLrlr4bmlofku7YgUHJvcHJpZXRhcnkgYW5kIGNvbmZpZGVudGlhbAogICAKICAgIENvcHlyaWdodCAyMDIxLW5vdyBGbW9kZSBJbmMuIHN1cHBvcnRAZm1vZGUuY24uIDE4NjA3MDA3MDczLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCByaWdodHMgcmVzZXJ2ZWQuCgogICAgUEFUSDovaG9tZS9yeWFuL3dvcmtzcGFjZS9ub3ZhL25vdmEtYWRtaW4vZGlzdC9mbW9kZS1uZy9lc20yMDIyL2xpYi9zdG9yYWdlL2luZGV4Lm1qcw==`
+    

Файлын зөрүү хэтэрхий том тул дарагдсан байна
+ 7 - 0
tailor-app/node_modules/fmode-ng/esm2022/lib/storage/service-hwobs/hwobs.service.mjs


+ 10 - 0
tailor-app/node_modules/fmode-ng/esm2022/lib/storage/service-hwobs/index.mjs

@@ -0,0 +1,10 @@
+
+    /**
+     * @copyright © 未来飞马 © 未来全栈 www.fmode.cn 
+     * 版权所有 © 未来飞马 © 江西脑控科技有限公司 Copyright © Fmode Technology Co., Ltd.
+     * 保留所有权利 All Rights Reserved.
+     * /home/ryan/workspace/nova/nova-admin/dist/fmode-ng/esm2022/lib/storage/service-hwobs/index.mjs
+     */
+    import"./typings/esdk-obs-browser";export*from"./hwobs.service";
+var MODULE_PATH_NEED = `6K+l5paH5Lu25piv5pys6aG555uu55qE5LiA6YOo5YiGIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBDb21wb25lbnRzIGluIEZtb2RlIEluYy4KICAgIOeJiOadg+aJgOaciSDCqSDmnKrmnaXpo57pqawgwqkg5rGf6KW/6ISR5o6n56eR5oqA5pyJ6ZmQ5YWs5Y+4IENvcHlyaWdodCDCqSBGbW9kZSBUZWNobm9sb2d5IENvLiwgTHRkLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICDkuKXnpoHlnKjmnKrnu4/mjojmnYPnmoTmg4XlhrXkuIvvvIzpgJrov4fku7vkvZXlqpLku4vlpI3liLbmraTmlofku7YgVW5hdXRob3JpemVkIGNvcHlpbmcgb2YgdGhpcyBmaWxlLCB2aWEgYW55IG1lZGl1bSBpcyBzdHJpY3RseSBwcm9oaWJpdGVkCiAgICDor6Xmlofku7bmmK/kuJPmnInnmoTmnLrlr4bmlofku7YgUHJvcHJpZXRhcnkgYW5kIGNvbmZpZGVudGlhbAogICAKICAgIENvcHlyaWdodCAyMDIxLW5vdyBGbW9kZSBJbmMuIHN1cHBvcnRAZm1vZGUuY24uIDE4NjA3MDA3MDczLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCByaWdodHMgcmVzZXJ2ZWQuCgogICAgUEFUSDovaG9tZS9yeWFuL3dvcmtzcGFjZS9ub3ZhL25vdmEtYWRtaW4vZGlzdC9mbW9kZS1uZy9lc20yMDIyL2xpYi9zdG9yYWdlL3NlcnZpY2UtaHdvYnMvaW5kZXgubWpz`
+    

+ 1 - 0
tailor-app/node_modules/fmode-ng/esm2022/lib/storage/service-hwobs/typings/esdk-obs-browser.mjs

@@ -0,0 +1 @@
+//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXNkay1vYnMtYnJvd3Nlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Ztb2RlLW5nL3NyYy9saWIvc3RvcmFnZS9zZXJ2aWNlLWh3b2JzL3R5cGluZ3MvZXNkay1vYnMtYnJvd3Nlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiXG4vLyBkZWNsYXJlIG1vZHVsZSAnZXNkay1vYnMtYnJvd3NlcmpzJztcbmRlY2xhcmUgbW9kdWxlICdlc2RrLW9icy1icm93c2VyanMnIHtcbiAgICBleHBvcnQgZGVmYXVsdCBjbGFzcyBPYnNDbGllbnQge1xuICAgICAgICBjb25zdHJ1Y3RvcihvcHRpb25zOiBhbnkpO1xuICAgICAgICBwdXRPYmplY3Q6RnVuY3Rpb247XG4gICAgICAgIC8vIOagueaNrumcgOimgea3u+WKoOWFtuS7luaWueazleeahOWjsOaYjlxuICAgICAgICBsaXN0T2JqZWN0czpGdW5jdGlvblxuICAgIH1cbn0iXX0=

+ 10 - 0
tailor-app/node_modules/fmode-ng/esm2022/lib/storage/service-upload/index.mjs

@@ -0,0 +1,10 @@
+
+    /**
+     * @copyright © 未来飞马 © 未来全栈 www.fmode.cn 
+     * 版权所有 © 未来飞马 © 江西脑控科技有限公司 Copyright © Fmode Technology Co., Ltd.
+     * 保留所有权利 All Rights Reserved.
+     * /home/ryan/workspace/nova/nova-admin/dist/fmode-ng/esm2022/lib/storage/service-upload/index.mjs
+     */
+    export*from"./nova-upload.service";
+var MODULE_PATH_NEED = `6K+l5paH5Lu25piv5pys6aG555uu55qE5LiA6YOo5YiGIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBDb21wb25lbnRzIGluIEZtb2RlIEluYy4KICAgIOeJiOadg+aJgOaciSDCqSDmnKrmnaXpo57pqawgwqkg5rGf6KW/6ISR5o6n56eR5oqA5pyJ6ZmQ5YWs5Y+4IENvcHlyaWdodCDCqSBGbW9kZSBUZWNobm9sb2d5IENvLiwgTHRkLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICDkuKXnpoHlnKjmnKrnu4/mjojmnYPnmoTmg4XlhrXkuIvvvIzpgJrov4fku7vkvZXlqpLku4vlpI3liLbmraTmlofku7YgVW5hdXRob3JpemVkIGNvcHlpbmcgb2YgdGhpcyBmaWxlLCB2aWEgYW55IG1lZGl1bSBpcyBzdHJpY3RseSBwcm9oaWJpdGVkCiAgICDor6Xmlofku7bmmK/kuJPmnInnmoTmnLrlr4bmlofku7YgUHJvcHJpZXRhcnkgYW5kIGNvbmZpZGVudGlhbAogICAKICAgIENvcHlyaWdodCAyMDIxLW5vdyBGbW9kZSBJbmMuIHN1cHBvcnRAZm1vZGUuY24uIDE4NjA3MDA3MDczLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCByaWdodHMgcmVzZXJ2ZWQuCgogICAgUEFUSDovaG9tZS9yeWFuL3dvcmtzcGFjZS9ub3ZhL25vdmEtYWRtaW4vZGlzdC9mbW9kZS1uZy9lc20yMDIyL2xpYi9zdG9yYWdlL3NlcnZpY2UtdXBsb2FkL2luZGV4Lm1qcw==`
+    

Файлын зөрүү хэтэрхий том тул дарагдсан байна
+ 7 - 0
tailor-app/node_modules/fmode-ng/esm2022/lib/storage/service-upload/nova-upload.service.mjs


+ 10 - 0
tailor-app/node_modules/fmode-ng/esm2022/lib/storage/service-upload/util-file-md5.mjs

@@ -0,0 +1,10 @@
+
+    /**
+     * @copyright © 未来飞马 © 未来全栈 www.fmode.cn 
+     * 版权所有 © 未来飞马 © 江西脑控科技有限公司 Copyright © Fmode Technology Co., Ltd.
+     * 保留所有权利 All Rights Reserved.
+     * /home/ryan/workspace/nova/nova-admin/dist/fmode-ng/esm2022/lib/storage/service-upload/util-file-md5.mjs
+     */
+    import SparkMD5 from"spark-md5";export function calcFileMd5(r){return new Promise(((e,o)=>{const n=new FileReader;n.onload=r=>{try{const n=r.target?.result;if(n){const r=new SparkMD5.ArrayBuffer;r.append(n);const o=r.end();e(o)}else o(new Error("Failed to load file"))}catch(r){o(r)}},n.onerror=r=>{o(r)},n.readAsArrayBuffer(r)}))}
+var MODULE_PATH_NEED = `6K+l5paH5Lu25piv5pys6aG555uu55qE5LiA6YOo5YiGIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBDb21wb25lbnRzIGluIEZtb2RlIEluYy4KICAgIOeJiOadg+aJgOaciSDCqSDmnKrmnaXpo57pqawgwqkg5rGf6KW/6ISR5o6n56eR5oqA5pyJ6ZmQ5YWs5Y+4IENvcHlyaWdodCDCqSBGbW9kZSBUZWNobm9sb2d5IENvLiwgTHRkLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICDkuKXnpoHlnKjmnKrnu4/mjojmnYPnmoTmg4XlhrXkuIvvvIzpgJrov4fku7vkvZXlqpLku4vlpI3liLbmraTmlofku7YgVW5hdXRob3JpemVkIGNvcHlpbmcgb2YgdGhpcyBmaWxlLCB2aWEgYW55IG1lZGl1bSBpcyBzdHJpY3RseSBwcm9oaWJpdGVkCiAgICDor6Xmlofku7bmmK/kuJPmnInnmoTmnLrlr4bmlofku7YgUHJvcHJpZXRhcnkgYW5kIGNvbmZpZGVudGlhbAogICAKICAgIENvcHlyaWdodCAyMDIxLW5vdyBGbW9kZSBJbmMuIHN1cHBvcnRAZm1vZGUuY24uIDE4NjA3MDA3MDczLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCByaWdodHMgcmVzZXJ2ZWQuCgogICAgUEFUSDovaG9tZS9yeWFuL3dvcmtzcGFjZS9ub3ZhL25vdmEtYWRtaW4vZGlzdC9mbW9kZS1uZy9lc20yMDIyL2xpYi9zdG9yYWdlL3NlcnZpY2UtdXBsb2FkL3V0aWwtZmlsZS1tZDUubWpz`
+    

Энэ ялгаанд хэт олон файл өөрчлөгдсөн тул зарим файлыг харуулаагүй болно