fmode-ng 0.0.83 → 0.0.85

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (176) hide show
  1. package/esm2022/lib/aigc/avatar/comp-avatar-talk/comp-avatar-talk.component.mjs +1 -1
  2. package/esm2022/lib/aigc/avatar/modal-chat-voice-input/modal-chat-voice-input.component.mjs +1 -1
  3. package/esm2022/lib/aigc/chat/chat-header-area/comp-header-area.component.mjs +1 -1
  4. package/esm2022/lib/aigc/chat/chat-message-card/comp-message-card.component.mjs +1 -1
  5. package/esm2022/lib/aigc/chat/chat-modal-input/modal-audio-message/modal-audio-message.component.mjs +1 -1
  6. package/esm2022/lib/aigc/chat/chat-modal-input/modal-input.component.mjs +1 -1
  7. package/esm2022/lib/aigc/chat/chat-panel/chat-panel.component.mjs +1 -1
  8. package/esm2022/lib/aigc/index.mjs +1 -1
  9. package/esm2022/lib/aigc/story/fm-office-viewer/fm-office-viewer.component.mjs +10 -0
  10. package/esm2022/lib/aigc/story/fm-story-card/fm-story-card.component.mjs +10 -0
  11. package/esm2022/lib/aigc/story/fm-story-list/fm-story-list.component.mjs +10 -0
  12. package/esm2022/lib/aigc/story/fm-story-list/story-preview.mjs +10 -0
  13. package/esm2022/lib/aigc/story/fm-story-loader/fm-story-loader.component.mjs +10 -0
  14. package/esm2022/lib/aigc/story/fm-story-splitter/fm-story-splitter.component.mjs +10 -0
  15. package/esm2022/lib/aigc/story/index.mjs +10 -0
  16. package/esm2022/lib/aigc/story/modal-chat-story/comp-chat-story-json/comp-chat-story-json.component.mjs +10 -0
  17. package/esm2022/lib/aigc/story/modal-chat-story/comp-diary-story/comp-diary-story.component.mjs +10 -0
  18. package/esm2022/lib/aigc/story/modal-chat-story/modal-chat-story.component.mjs +10 -0
  19. package/esm2022/lib/aigc/story/story.service.mjs +10 -0
  20. package/esm2022/lib/aigc/voice/fmode-voice.service.mjs +1 -1
  21. package/esm2022/lib/aigc/voice/index.mjs +1 -1
  22. package/esm2022/lib/aigc/voice/{audio.player.mjs → lib/audio/audio.player.mjs} +2 -2
  23. package/esm2022/lib/aigc/voice/lib/audio/audio.streamer.mjs +10 -0
  24. package/esm2022/lib/aigc/voice/lib/audio/streamer.microsoft.mjs +10 -0
  25. package/esm2022/lib/aigc/voice/lib/audio/streamer.pcm.mjs +10 -0
  26. package/esm2022/lib/aigc/voice/tts/fmode-tts-class.mjs +1 -1
  27. package/esm2022/lib/aigc/voice/tts/index.mjs +1 -1
  28. package/esm2022/lib/aigc/voice/tts/int-tts-provider.mjs +10 -0
  29. package/esm2022/lib/aigc/voice/tts/provider-doubao.mjs +10 -0
  30. package/esm2022/lib/aigc/voice/tts/provider-microsoft.mjs +10 -0
  31. package/esm2022/lib/core/agent/chat/completion/fmode-completion.mjs +1 -1
  32. package/esm2022/lib/core/agent/chat/completion/int-gpt-chat-options.mjs +10 -0
  33. package/esm2022/lib/core/agent/chat/fmode-chat.mjs +1 -1
  34. package/esm2022/lib/core/agent/chat/index.mjs +1 -1
  35. package/esm2022/lib/core/agent/prompt/agent.prompt.mjs +1 -1
  36. package/esm2022/lib/core/index.mjs +10 -0
  37. package/esm2022/lib/core/voice/index.mjs +10 -0
  38. package/esm2022/lib/icon/filetype/audio.svg.mjs +10 -0
  39. package/esm2022/lib/icon/filetype/avatar.svg.mjs +10 -0
  40. package/esm2022/lib/icon/filetype/chat.svg.mjs +10 -0
  41. package/esm2022/lib/icon/filetype/docx.svg.mjs +10 -0
  42. package/esm2022/lib/icon/filetype/file.svg.mjs +10 -0
  43. package/esm2022/lib/icon/filetype/filetype.pipe.mjs +10 -0
  44. package/esm2022/lib/icon/filetype/index.mjs +10 -0
  45. package/esm2022/lib/icon/filetype/md.svg.mjs +10 -0
  46. package/esm2022/lib/icon/filetype/pdf.svg.mjs +10 -0
  47. package/esm2022/lib/icon/filetype/pptx.svg.mjs +10 -0
  48. package/esm2022/lib/icon/filetype/svgtoblob.mjs +10 -0
  49. package/esm2022/lib/icon/filetype/video.svg.mjs +10 -0
  50. package/esm2022/lib/icon/filetype/xlsx.svg.mjs +10 -0
  51. package/esm2022/lib/icon/index.mjs +10 -0
  52. package/esm2022/lib/person/comp-person-gender-icon/comp-person-gender-icon.component.mjs +10 -0
  53. package/esm2022/lib/person/comp-person-item/comp-person-item.component.mjs +10 -0
  54. package/esm2022/lib/person/comp-person-story/comp-person-story.component.mjs +10 -0
  55. package/esm2022/lib/person/edit-upload/edit-upload.component.mjs +10 -0
  56. package/esm2022/lib/person/edit-upload/edit-upload.module.mjs +10 -0
  57. package/esm2022/lib/person/index.mjs +10 -0
  58. package/esm2022/lib/person/modal-person-select/modal-person-select.component.mjs +10 -0
  59. package/esm2022/lib/person/modal-user-verify/secret-text.pipe.mjs +10 -0
  60. package/esm2022/lib/person/modal-user-verify/user-verify.component.mjs +10 -0
  61. package/esm2022/lib/person/person-detail/person-detail.component.mjs +10 -0
  62. package/esm2022/lib/person/person.service.mjs +10 -0
  63. package/esm2022/lib/text/fm-article-editor/article-editor-topbar/article-editor-topbar.component.mjs +10 -0
  64. package/esm2022/lib/text/fm-article-editor/article.service.mjs +10 -0
  65. package/esm2022/lib/text/fm-article-editor/comp-upload-book-banners/comp-upload-book-banners.component.mjs +10 -0
  66. package/esm2022/lib/text/fm-article-editor/draft.service.mjs +10 -0
  67. package/esm2022/lib/text/fm-article-editor/fm-article-aitool/fm-article-aitool.component.mjs +10 -0
  68. package/esm2022/lib/text/fm-article-editor/fm-article-draft/fm-article-draft.component.mjs +10 -0
  69. package/esm2022/lib/text/fm-article-editor/fm-article-editor.component.mjs +10 -0
  70. package/esm2022/lib/text/fm-article-editor/fm-article-outline/fm-article-outline.component.mjs +10 -0
  71. package/esm2022/lib/text/fm-article-editor/fm-article-outline-leftitem/fm-article-outline-leftitem.component.mjs +10 -0
  72. package/esm2022/lib/text/fm-article-editor/fm-article-preview/fm-article-preview.component.mjs +10 -0
  73. package/esm2022/lib/text/fm-article-editor/fm-article-write-options/fm-article-write-options.component.mjs +10 -0
  74. package/esm2022/lib/text/fm-article-editor/outline-count.pipe.mjs +10 -0
  75. package/esm2022/lib/text/fm-article-editor/prompt/prompt-insertion-article.mjs +10 -0
  76. package/esm2022/lib/text/fm-article-editor/task-article-generation.mjs +10 -0
  77. package/esm2022/lib/text/fm-article-editor/tasks/task-article-draft-create.mjs +10 -0
  78. package/esm2022/lib/text/fm-article-editor/tasks/task-article-outline-edit.mjs +10 -0
  79. package/esm2022/lib/text/fm-article-editor/tasks/task-article-outline.mjs +10 -0
  80. package/esm2022/lib/text/fm-article-editor/tasks/task-article-preview.mjs +10 -0
  81. package/esm2022/lib/text/fm-article-editor/tasks/task-article-writing-options.mjs +10 -0
  82. package/esm2022/lib/text/fm-article-editor/tasks/task-document-select.mjs +10 -0
  83. package/esm2022/lib/text/fm-text-quill/fm-text-quill.component.mjs +10 -0
  84. package/esm2022/lib/text/index.mjs +10 -0
  85. package/esm2022/public-api.mjs +1 -1
  86. package/fesm2022/fmode-ng.mjs +1 -1
  87. package/fesm2022/fmode-ng.mjs.map +1 -1
  88. package/lib/aigc/avatar/comp-avatar-talk/comp-avatar-talk.component.d.ts +5 -3
  89. package/lib/aigc/avatar/modal-chat-voice-input/modal-chat-voice-input.component.d.ts +4 -2
  90. package/lib/aigc/chat/chat-message-card/comp-message-card.component.d.ts +6 -1
  91. package/lib/aigc/chat/chat-modal-input/modal-audio-message/modal-audio-message.component.d.ts +6 -3
  92. package/lib/aigc/chat/chat-modal-input/modal-input.component.d.ts +5 -1
  93. package/lib/aigc/index.d.ts +1 -0
  94. package/lib/aigc/story/fm-office-viewer/fm-office-viewer.component.d.ts +23 -0
  95. package/lib/aigc/story/fm-story-card/fm-story-card.component.d.ts +26 -0
  96. package/lib/aigc/story/fm-story-list/fm-story-list.component.d.ts +71 -0
  97. package/lib/aigc/story/fm-story-list/story-preview.d.ts +20 -0
  98. package/lib/aigc/story/fm-story-loader/fm-story-loader.component.d.ts +38 -0
  99. package/lib/aigc/story/fm-story-splitter/fm-story-splitter.component.d.ts +13 -0
  100. package/lib/aigc/story/index.d.ts +5 -0
  101. package/lib/aigc/story/modal-chat-story/comp-chat-story-json/comp-chat-story-json.component.d.ts +14 -0
  102. package/lib/aigc/story/modal-chat-story/comp-diary-story/comp-diary-story.component.d.ts +29 -0
  103. package/lib/aigc/story/modal-chat-story/modal-chat-story.component.d.ts +44 -0
  104. package/lib/aigc/story/story.service.d.ts +12 -0
  105. package/lib/aigc/voice/fmode-voice.service.d.ts +3 -6
  106. package/lib/aigc/voice/index.d.ts +3 -2
  107. package/lib/aigc/voice/lib/audio/audio.streamer.d.ts +33 -0
  108. package/lib/aigc/voice/{stream.player.d.ts → lib/audio/streamer.microsoft.d.ts} +2 -2
  109. package/lib/aigc/voice/lib/audio/streamer.pcm.d.ts +45 -0
  110. package/lib/aigc/voice/tts/fmode-tts-class.d.ts +17 -37
  111. package/lib/aigc/voice/tts/index.d.ts +3 -0
  112. package/lib/aigc/voice/tts/int-tts-provider.d.ts +35 -0
  113. package/lib/aigc/voice/tts/provider-doubao.d.ts +43 -0
  114. package/lib/aigc/voice/tts/provider-microsoft.d.ts +21 -0
  115. package/lib/core/agent/chat/completion/fmode-completion.d.ts +2 -1
  116. package/lib/core/agent/chat/completion/int-gpt-chat-options.d.ts +72 -0
  117. package/lib/core/agent/chat/index.d.ts +1 -1
  118. package/lib/core/agent/chat/interface.d.ts +3 -0
  119. package/lib/core/agent/prompt/agent.prompt.d.ts +2 -1
  120. package/lib/core/index.d.ts +2 -0
  121. package/lib/core/voice/index.d.ts +1 -0
  122. package/lib/icon/filetype/audio.svg.d.ts +1 -0
  123. package/lib/icon/filetype/avatar.svg.d.ts +1 -0
  124. package/lib/icon/filetype/chat.svg.d.ts +1 -0
  125. package/lib/icon/filetype/docx.svg.d.ts +1 -0
  126. package/lib/icon/filetype/file.svg.d.ts +1 -0
  127. package/lib/icon/filetype/filetype.pipe.d.ts +8 -0
  128. package/lib/icon/filetype/index.d.ts +11 -0
  129. package/lib/icon/filetype/md.svg.d.ts +1 -0
  130. package/lib/icon/filetype/pdf.svg.d.ts +1 -0
  131. package/lib/icon/filetype/pptx.svg.d.ts +1 -0
  132. package/lib/icon/filetype/svgtoblob.d.ts +1 -0
  133. package/lib/icon/filetype/video.svg.d.ts +1 -0
  134. package/lib/icon/filetype/xlsx.svg.d.ts +1 -0
  135. package/lib/icon/index.d.ts +1 -0
  136. package/lib/person/comp-person-gender-icon/comp-person-gender-icon.component.d.ts +20 -0
  137. package/lib/person/comp-person-item/comp-person-item.component.d.ts +10 -0
  138. package/lib/person/comp-person-story/comp-person-story.component.d.ts +67 -0
  139. package/lib/person/edit-upload/edit-upload.component.d.ts +81 -0
  140. package/lib/person/edit-upload/edit-upload.module.d.ts +11 -0
  141. package/lib/person/index.d.ts +4 -0
  142. package/lib/person/modal-person-select/modal-person-select.component.d.ts +25 -0
  143. package/lib/person/modal-user-verify/secret-text.pipe.d.ts +7 -0
  144. package/lib/person/modal-user-verify/user-verify.component.d.ts +88 -0
  145. package/lib/person/person-detail/person-detail.component.d.ts +41 -0
  146. package/lib/person/person.service.d.ts +33 -0
  147. package/lib/text/fm-article-editor/article-editor-topbar/article-editor-topbar.component.d.ts +23 -0
  148. package/lib/text/fm-article-editor/article.service.d.ts +41 -0
  149. package/lib/text/fm-article-editor/comp-upload-book-banners/comp-upload-book-banners.component.d.ts +19 -0
  150. package/lib/text/fm-article-editor/draft.service.d.ts +33 -0
  151. package/lib/text/fm-article-editor/fm-article-aitool/fm-article-aitool.component.d.ts +73 -0
  152. package/lib/text/fm-article-editor/fm-article-draft/fm-article-draft.component.d.ts +81 -0
  153. package/lib/text/fm-article-editor/fm-article-editor.component.d.ts +90 -0
  154. package/lib/text/fm-article-editor/fm-article-outline/fm-article-outline.component.d.ts +36 -0
  155. package/lib/text/fm-article-editor/fm-article-outline-leftitem/fm-article-outline-leftitem.component.d.ts +12 -0
  156. package/lib/text/fm-article-editor/fm-article-preview/fm-article-preview.component.d.ts +55 -0
  157. package/lib/text/fm-article-editor/fm-article-write-options/fm-article-write-options.component.d.ts +31 -0
  158. package/lib/text/fm-article-editor/outline-count.pipe.d.ts +7 -0
  159. package/lib/text/fm-article-editor/prompt/prompt-insertion-article.d.ts +6 -0
  160. package/lib/text/fm-article-editor/task-article-generation.d.ts +23 -0
  161. package/lib/text/fm-article-editor/tasks/task-article-draft-create.d.ts +18 -0
  162. package/lib/text/fm-article-editor/tasks/task-article-outline-edit.d.ts +14 -0
  163. package/lib/text/fm-article-editor/tasks/task-article-outline.d.ts +19 -0
  164. package/lib/text/fm-article-editor/tasks/task-article-preview.d.ts +7 -0
  165. package/lib/text/fm-article-editor/tasks/task-article-writing-options.d.ts +14 -0
  166. package/lib/text/fm-article-editor/tasks/task-document-select.d.ts +14 -0
  167. package/lib/text/fm-text-quill/fm-text-quill.component.d.ts +39 -0
  168. package/lib/text/index.d.ts +3 -0
  169. package/package.json +6 -2
  170. package/public-api.d.ts +4 -0
  171. package/esm2022/lib/aigc/voice/lib/recorder/engine-pcm.mjs +0 -10
  172. package/esm2022/lib/aigc/voice/lib/recorder/engine-wav.mjs +0 -10
  173. package/esm2022/lib/aigc/voice/stream.player.mjs +0 -10
  174. package/lib/aigc/voice/lib/recorder/engine-pcm.d.ts +0 -1
  175. package/lib/aigc/voice/lib/recorder/engine-wav.d.ts +0 -1
  176. /package/lib/aigc/voice/{audio.player.d.ts → lib/audio/audio.player.d.ts} +0 -0
@@ -7,20 +7,22 @@ import { ActivatedRoute, Router } from '@angular/router';
7
7
  import * as Parse from "parse";
8
8
  import { NovaCloudService } from '../../../nova-cloud/nova-cloud.service';
9
9
  import { FmodeChat } from '../../service-fmai/service-chat';
10
+ import { Diagnostic } from '@awesome-cordova-plugins/diagnostic/ngx';
10
11
  import * as i0 from "@angular/core";
11
12
  export declare class CompAvatarTalkComponent implements AfterViewInit, OnDestroy {
12
- voiceServ: FmodeVoiceService;
13
- private platform;
14
13
  private router;
15
14
  private navCtrl;
16
15
  private route;
17
16
  chatServ: ChatService;
18
17
  private ncloud;
18
+ private platform;
19
+ private diagnostic;
19
20
  avatarComp: FmodeAvatarRoleComp;
20
21
  roleId: string;
21
22
  avatarRole: Parse.Object;
22
23
  fmodeChat: FmodeChat;
23
- constructor(voiceServ: FmodeVoiceService, platform: Platform, router: Router, navCtrl: NavController, route: ActivatedRoute, chatServ: ChatService, ncloud: NovaCloudService);
24
+ voiceServ: FmodeVoiceService;
25
+ constructor(router: Router, navCtrl: NavController, route: ActivatedRoute, chatServ: ChatService, ncloud: NovaCloudService, platform: Platform, diagnostic: Diagnostic);
24
26
  ngOnInit(): void;
25
27
  ngOnDestroy(): void;
26
28
  goBack(): void;
@@ -5,14 +5,15 @@ import { Platform } from "@ionic/angular";
5
5
  import { FmodeVoiceService } from '../../voice';
6
6
  import { FmodeChat, ChatService } from '../../service-fmai/service-chat';
7
7
  import { NovaCloudService } from '../../../nova-cloud/nova-cloud.service';
8
+ import { Diagnostic } from '@awesome-cordova-plugins/diagnostic/ngx';
8
9
  import * as i0 from "@angular/core";
9
10
  export declare class ModalChatVoiceInputComponent implements OnInit {
10
11
  private platform;
11
12
  private router;
12
- voiceServ: FmodeVoiceService;
13
13
  private toastCtrl;
14
14
  private ncloud;
15
15
  chatServ: ChatService;
16
+ private diagnostic;
16
17
  fmodeChat: FmodeChat | undefined;
17
18
  /**
18
19
  * 开始讲话方式:click点击开始/点击结束 press按住讲话/松开结束
@@ -21,7 +22,8 @@ export declare class ModalChatVoiceInputComponent implements OnInit {
21
22
  talkMode: "click" | "press";
22
23
  talkTips: string;
23
24
  errorText: string;
24
- constructor(platform: Platform, router: Router, voiceServ: FmodeVoiceService, toastCtrl: ToastController, ncloud: NovaCloudService, chatServ: ChatService);
25
+ voiceServ: FmodeVoiceService;
26
+ constructor(platform: Platform, router: Router, toastCtrl: ToastController, ncloud: NovaCloudService, chatServ: ChatService, diagnostic: Diagnostic);
25
27
  ngOnInit(): void;
26
28
  /**
27
29
  * ASR唤醒功能
@@ -1,16 +1,21 @@
1
+ import { OnChanges } from '@angular/core';
1
2
  import { FmodeChat } from '../../service-fmai/service-chat';
3
+ import { BehaviorSubject } from 'rxjs';
2
4
  import Parse from "parse";
3
5
  import { ClipboardService } from '../../comp-markdown-preview/clipboard.service';
4
6
  import { FmodeTTS } from '../../voice/tts';
5
7
  import { FmodeChatMessage } from '../../../core/agent/chat/interface';
6
8
  import * as i0 from "@angular/core";
7
- export declare class FmChatMessageCard {
9
+ export declare class FmChatMessageCard implements OnChanges {
8
10
  private copyServ;
9
11
  index: number | undefined;
10
12
  message: FmodeChatMessage;
11
13
  role: Parse.Object;
12
14
  chat: FmodeChat;
13
15
  user: Parse.User;
16
+ messageText$: BehaviorSubject<string>;
17
+ isLoadingText: boolean;
18
+ ngOnChanges(): void;
14
19
  constructor(copyServ: ClipboardService);
15
20
  tts: FmodeTTS | null;
16
21
  toggleVoicePlay(): Promise<void>;
@@ -1,18 +1,21 @@
1
- import { ModalController, ToastController } from '@ionic/angular/standalone';
1
+ import { ModalController, Platform, ToastController } from '@ionic/angular/standalone';
2
2
  import { FmodeVoiceService } from '../../../voice/fmode-voice.service';
3
3
  import { FmodeChat } from '../../../service-fmai/service-chat';
4
4
  import { NovaUploadService } from '../../../../storage/service-upload/nova-upload.service';
5
5
  import Parse from "parse";
6
+ import { Diagnostic } from '@awesome-cordova-plugins/diagnostic/ngx';
6
7
  import * as i0 from "@angular/core";
7
8
  export declare class ModalAudioMessageComponent {
8
- voiceServ: FmodeVoiceService;
9
9
  private toastCtrl;
10
10
  private uploadServ;
11
+ private platform;
12
+ private diagnostic;
11
13
  chat: FmodeChat;
12
14
  modal: ModalController;
13
15
  now: Date | undefined;
14
16
  isRecording: boolean;
15
- constructor(voiceServ: FmodeVoiceService, toastCtrl: ToastController, uploadServ: NovaUploadService);
17
+ voiceServ: FmodeVoiceService;
18
+ constructor(toastCtrl: ToastController, uploadServ: NovaUploadService, platform: Platform, diagnostic: Diagnostic);
16
19
  ngOnInit(): void;
17
20
  /**
18
21
  * 语音听写服务 ==============================================
@@ -28,7 +28,7 @@ export declare class FmChatModalInput implements OnInit {
28
28
  isAudioModal: boolean;
29
29
  closeAudio(): void;
30
30
  audioModalHeightPoint: number;
31
- startTalk(): Promise<void>;
31
+ startTalk(): Promise<boolean>;
32
32
  authServ: any;
33
33
  constructor(toastCtrl: ToastController, alertCtrl: AlertController, modalCtrl: ModalController, router: Router, imagineServ: ImagineService, chatServ: ChatService, account: AccountService);
34
34
  ngOnInit(): void;
@@ -36,6 +36,10 @@ export declare class FmChatModalInput implements OnInit {
36
36
  setMessageImage(): Promise<void>;
37
37
  onInputFocus(): void;
38
38
  onKeyDown(event: KeyboardEvent): void;
39
+ isSending: boolean;
40
+ lastMessageTimeout: any;
41
+ lastMessageTimestamp: number;
42
+ replyTimeout: number;
39
43
  sendMessage(): Promise<boolean>;
40
44
  checkBalance(): Promise<boolean>;
41
45
  getChatShare(): Promise<void>;
@@ -10,3 +10,4 @@ export * from "./voice";
10
10
  export * from "./avatar";
11
11
  export * from "./agent";
12
12
  export * from "./chat";
13
+ export * from "./story";
@@ -0,0 +1,23 @@
1
+ import { OnInit } from '@angular/core';
2
+ import { DomSanitizer, SafeResourceUrl } from '@angular/platform-browser';
3
+ import { ModalController } from '@ionic/angular/standalone';
4
+ import Parse from "parse";
5
+ import * as i0 from "@angular/core";
6
+ export declare class FmOfficeViewerComponent implements OnInit {
7
+ private domSan;
8
+ private modalCtrl;
9
+ officeHost: string;
10
+ wopiHost: string;
11
+ fileId: string | undefined;
12
+ attach: Parse.Object | undefined;
13
+ permission: string;
14
+ showHeader: boolean;
15
+ safeUrl: SafeResourceUrl | undefined;
16
+ constructor(domSan: DomSanitizer, modalCtrl: ModalController);
17
+ back(): void;
18
+ ngOnInit(): void;
19
+ genSafeUrl(): void;
20
+ loadAttachment(id: string): Promise<void>;
21
+ static ɵfac: i0.ɵɵFactoryDeclaration<FmOfficeViewerComponent, never>;
22
+ static ɵcmp: i0.ɵɵComponentDeclaration<FmOfficeViewerComponent, "fm-office-viewer", never, { "officeHost": { "alias": "officeHost"; "required": false; }; "wopiHost": { "alias": "wopiHost"; "required": false; }; "fileId": { "alias": "fileId"; "required": false; }; "permission": { "alias": "permission"; "required": false; }; "showHeader": { "alias": "showHeader"; "required": false; }; }, {}, never, never, true, never>;
23
+ }
@@ -0,0 +1,26 @@
1
+ import { EventEmitter, OnInit } from '@angular/core';
2
+ import { AgentStory } from '../../../core';
3
+ import * as i0 from "@angular/core";
4
+ export declare class FmStoryCardComponent implements OnInit {
5
+ agentStory: AgentStory | undefined;
6
+ story: Parse.Object | undefined;
7
+ isSelectMode: boolean;
8
+ _checked: boolean;
9
+ get checked(): boolean;
10
+ set checked(value: boolean);
11
+ checkedChange: EventEmitter<boolean>;
12
+ onCheckStory: EventEmitter<{
13
+ agentStory: AgentStory;
14
+ event: Event;
15
+ }>;
16
+ onPreviewStory: EventEmitter<AgentStory>;
17
+ onDestoryStory: EventEmitter<AgentStory>;
18
+ colorMap: any;
19
+ constructor();
20
+ checkStory(agentStory: any, event: any): void;
21
+ previewStory(agentStory: any): void;
22
+ destroyStory(agentStory: any): void;
23
+ ngOnInit(): void;
24
+ static ɵfac: i0.ɵɵFactoryDeclaration<FmStoryCardComponent, never>;
25
+ static ɵcmp: i0.ɵɵComponentDeclaration<FmStoryCardComponent, "fm-story-card", never, { "story": { "alias": "story"; "required": false; }; "isSelectMode": { "alias": "isSelectMode"; "required": false; }; "_checked": { "alias": "checked"; "required": false; }; }, { "checkedChange": "checkedChange"; "onCheckStory": "onCheckStory"; "onPreviewStory": "onPreviewStory"; "onDestoryStory": "onDestoryStory"; }, never, never, true, never>;
26
+ }
@@ -0,0 +1,71 @@
1
+ import { EventEmitter, OnInit } from '@angular/core';
2
+ import { MatDialog, MatDialogRef } from '@angular/material/dialog';
3
+ import Parse from "parse";
4
+ import { AgentStory } from '../../../core';
5
+ import { ActivatedRoute, Router } from '@angular/router';
6
+ import { LoadingController } from '@ionic/angular';
7
+ import { StoryService } from '../story.service';
8
+ import { AlertController, ModalController, NavController } from '@ionic/angular/standalone';
9
+ import { ChatService } from '../../service-fmai/service-chat/chat.service';
10
+ import { NovaCloudService } from '../../../nova-cloud/nova-cloud.service';
11
+ import { NovaUploadService } from '../../../storage/service-upload/nova-upload.service';
12
+ import * as i0 from "@angular/core";
13
+ export declare class FmStoryListComponent implements OnInit {
14
+ private route;
15
+ private loadingCtrl;
16
+ dialog: MatDialog;
17
+ private router;
18
+ storyServ: StoryService;
19
+ private chatServ;
20
+ private alertCtrl;
21
+ private modalCtrl;
22
+ private navCtrl;
23
+ private ncloud;
24
+ private nupload;
25
+ id: string | undefined;
26
+ article: Parse.Object | undefined;
27
+ person: Parse.Object | undefined;
28
+ book: Parse.Object | undefined;
29
+ defaultAvatar: string;
30
+ currentStory: AgentStory | undefined;
31
+ isPreview: boolean;
32
+ currentTab: string;
33
+ height: string;
34
+ isSelectMode: boolean;
35
+ checkedMap: {
36
+ [key: string]: true;
37
+ };
38
+ selectCount: number;
39
+ selectToken: number;
40
+ onCancel: EventEmitter<boolean>;
41
+ onCountChange: EventEmitter<number>;
42
+ onTokenChange: EventEmitter<number>;
43
+ onPreviewStory: EventEmitter<AgentStory>;
44
+ storyType: string;
45
+ changeStoryType(value: any): void;
46
+ cancel(): void;
47
+ checkStory(event: any): void;
48
+ calcSelectTokens(): Promise<number>;
49
+ confirmSelectedList(): Promise<void>;
50
+ getAllSelectDocument(): Promise<{
51
+ documentList: Parse.Object<Parse.Attributes>[];
52
+ storyList: Parse.Object<Parse.Attributes>[];
53
+ }>;
54
+ onConfirmSelect: EventEmitter<any>;
55
+ constructor(route: ActivatedRoute, loadingCtrl: LoadingController, dialog: MatDialog, router: Router, storyServ: StoryService, chatServ: ChatService, alertCtrl: AlertController, modalCtrl: ModalController, navCtrl: NavController, ncloud: NovaCloudService, nupload: NovaUploadService);
56
+ ngOnInit(): Promise<void>;
57
+ getArticleDocList(): string[];
58
+ loadStory(): Promise<void>;
59
+ newStory(): void;
60
+ previewStory(event: any): Promise<void>;
61
+ destroyStory(event: any, index: number): Promise<void>;
62
+ static ɵfac: i0.ɵɵFactoryDeclaration<FmStoryListComponent, never>;
63
+ static ɵcmp: i0.ɵɵComponentDeclaration<FmStoryListComponent, "fm-story-list", never, { "id": { "alias": "id"; "required": false; }; "article": { "alias": "article"; "required": false; }; "person": { "alias": "person"; "required": false; }; "book": { "alias": "book"; "required": false; }; "isSelectMode": { "alias": "isSelectMode"; "required": false; }; }, { "onCancel": "onCancel"; "onCountChange": "onCountChange"; "onTokenChange": "onTokenChange"; "onPreviewStory": "onPreviewStory"; "onConfirmSelect": "onConfirmSelect"; }, never, never, true, never>;
64
+ }
65
+ export declare class DialogDeleteStoryDialog {
66
+ dialogRef: MatDialogRef<DialogDeleteStoryDialog>;
67
+ data: any;
68
+ constructor(dialogRef: MatDialogRef<DialogDeleteStoryDialog>, data: any);
69
+ static ɵfac: i0.ɵɵFactoryDeclaration<DialogDeleteStoryDialog, never>;
70
+ static ɵcmp: i0.ɵɵComponentDeclaration<DialogDeleteStoryDialog, "delete-story-dialog", never, {}, {}, never, never, true, never>;
71
+ }
@@ -0,0 +1,20 @@
1
+ import { ChatService } from '../../service-fmai/service-chat/chat.service';
2
+ import { NovaCloudService } from '../../../nova-cloud/nova-cloud.service';
3
+ import { NovaUploadService } from '../../../storage/service-upload/nova-upload.service';
4
+ import { NavController } from "@ionic/angular";
5
+ import { AlertController, ModalController } from "@ionic/angular/standalone";
6
+ import Parse from 'parse';
7
+ export declare function previewStoryMobile(story: Parse.Object, options: {
8
+ chatServ: ChatService;
9
+ alertCtrl: AlertController;
10
+ modalCtrl: ModalController;
11
+ navCtrl: NavController;
12
+ ncloud: NovaCloudService;
13
+ nupload: NovaUploadService;
14
+ }): Promise<void>;
15
+ export declare function getStoryType(story: Parse.Object): Promise<"" | "document" | "chat" | "diary">;
16
+ export declare function getRoleById(id: string): Promise<Parse.Object<Parse.Attributes>>;
17
+ export declare function openStoryPreview(modalCtrl: ModalController, alertCtrl: AlertController, options: {
18
+ previewComp: any;
19
+ props: any;
20
+ }): Promise<any | undefined>;
@@ -0,0 +1,38 @@
1
+ import { ChangeDetectorRef, OnInit } from '@angular/core';
2
+ import { NavController } from '@ionic/angular';
3
+ import { ChatService } from '../../service-fmai/service-chat/chat.service';
4
+ import { NovaCloudService } from '../../../nova-cloud/nova-cloud.service';
5
+ import { NovaUploadService } from '../../../storage/service-upload/nova-upload.service';
6
+ import { FmodeChat } from '../../../core';
7
+ import { NzUploadFile, NzUploadXHRArgs } from 'ng-zorro-antd/upload';
8
+ import Parse from "parse";
9
+ import { Subscription } from 'rxjs';
10
+ import { StoryService } from '../story.service';
11
+ import { AgentStory } from '../../../core';
12
+ import * as i0 from "@angular/core";
13
+ export declare class FmStoryLoaderComponent implements OnInit {
14
+ private nupload;
15
+ private chatServ;
16
+ private navCtrl;
17
+ private ncloud;
18
+ private cdRef;
19
+ private storyServ;
20
+ isSelectMode: boolean;
21
+ story: AgentStory | undefined;
22
+ fileType: string | undefined;
23
+ constructor(nupload: NovaUploadService, chatServ: ChatService, navCtrl: NavController, ncloud: NovaCloudService, cdRef: ChangeDetectorRef, storyServ: StoryService);
24
+ ngOnInit(): void;
25
+ initStory(agentStory?: AgentStory, options?: {
26
+ isNew?: boolean;
27
+ }): void;
28
+ chatSession: Parse.Object | undefined;
29
+ attachment: {
30
+ id: string;
31
+ } | undefined;
32
+ uploadedFile: NzUploadFile | undefined;
33
+ uploadToNovaRequest: (fileReq: NzUploadXHRArgs) => Subscription;
34
+ fmodeChat: FmodeChat | undefined;
35
+ loadChatSessionToFmodeChat(story?: AgentStory): Promise<void>;
36
+ static ɵfac: i0.ɵɵFactoryDeclaration<FmStoryLoaderComponent, never>;
37
+ static ɵcmp: i0.ɵɵComponentDeclaration<FmStoryLoaderComponent, "fm-story-loader", never, { "isSelectMode": { "alias": "isSelectMode"; "required": false; }; "story": { "alias": "story"; "required": false; }; }, {}, never, never, true, never>;
38
+ }
@@ -0,0 +1,13 @@
1
+ import { OnInit } from '@angular/core';
2
+ import { AgentStory } from '../../../core';
3
+ import Parse from "parse";
4
+ import * as i0 from "@angular/core";
5
+ export declare class FmStorySplitterComponent implements OnInit {
6
+ story: AgentStory | undefined;
7
+ docsList: Parse.Object[] | undefined;
8
+ constructor();
9
+ ngOnInit(): void;
10
+ loadSplitter(): Promise<void>;
11
+ static ɵfac: i0.ɵɵFactoryDeclaration<FmStorySplitterComponent, never>;
12
+ static ɵcmp: i0.ɵɵComponentDeclaration<FmStorySplitterComponent, "fm-story-splitter", never, { "story": { "alias": "story"; "required": false; }; }, {}, never, never, true, never>;
13
+ }
@@ -0,0 +1,5 @@
1
+ export * from "./fm-story-card/fm-story-card.component";
2
+ export * from "./fm-story-list/fm-story-list.component";
3
+ export * from "./fm-story-loader/fm-story-loader.component";
4
+ export * from "./fm-story-splitter/fm-story-splitter.component";
5
+ export * from "./story.service";
@@ -0,0 +1,14 @@
1
+ import { OnInit } from '@angular/core';
2
+ import { ModalController } from "@ionic/angular/standalone";
3
+ import * as i0 from "@angular/core";
4
+ export declare class CompChatStoryJsonComponent implements OnInit {
5
+ private modalCtrl;
6
+ story: Parse.Object | undefined;
7
+ person: Parse.Object | undefined;
8
+ showHeader: boolean;
9
+ constructor(modalCtrl: ModalController);
10
+ back(): void;
11
+ ngOnInit(): void;
12
+ static ɵfac: i0.ɵɵFactoryDeclaration<CompChatStoryJsonComponent, never>;
13
+ static ɵcmp: i0.ɵɵComponentDeclaration<CompChatStoryJsonComponent, "comp-chat-story-json", never, { "story": { "alias": "story"; "required": false; }; "person": { "alias": "person"; "required": false; }; "showHeader": { "alias": "showHeader"; "required": false; }; }, {}, never, never, true, never>;
14
+ }
@@ -0,0 +1,29 @@
1
+ import { ChangeDetectorRef, OnInit } from '@angular/core';
2
+ import { ModalController } from "@ionic/angular/standalone";
3
+ import Quill from 'quill';
4
+ import * as i0 from "@angular/core";
5
+ export declare class CompDiaryStoryComponent implements OnInit {
6
+ private modalCtrl;
7
+ private cdRef;
8
+ story: Parse.Object | undefined;
9
+ person: Parse.Object | undefined;
10
+ showHeader: boolean;
11
+ readOnly: boolean;
12
+ contentChanged: boolean;
13
+ showInfo: boolean;
14
+ now: Date;
15
+ toolbar: Array<any>;
16
+ constructor(modalCtrl: ModalController, cdRef: ChangeDetectorRef);
17
+ back(): void;
18
+ ngOnInit(): void;
19
+ /**段落内容:选中及润色 */
20
+ selectQuill: Quill | undefined;
21
+ selectText: string;
22
+ selectRange: Range | undefined;
23
+ selectChange(event: any): void;
24
+ goOptimizeText(event: any): void;
25
+ setContent(content: any, arrayItem?: any): void;
26
+ save(): void;
27
+ static ɵfac: i0.ɵɵFactoryDeclaration<CompDiaryStoryComponent, never>;
28
+ static ɵcmp: i0.ɵɵComponentDeclaration<CompDiaryStoryComponent, "comp-diary-story", never, { "story": { "alias": "story"; "required": false; }; "person": { "alias": "person"; "required": false; }; "showHeader": { "alias": "showHeader"; "required": false; }; "readOnly": { "alias": "readOnly"; "required": false; }; }, {}, never, never, true, never>;
29
+ }
@@ -0,0 +1,44 @@
1
+ import { OnInit } from '@angular/core';
2
+ import { ActivatedRoute } from '@angular/router';
3
+ import { AlertController, ModalController, NavController } from "@ionic/angular/standalone";
4
+ import Parse from "parse";
5
+ import { PersonService } from '../../../person';
6
+ import * as i0 from "@angular/core";
7
+ export declare class ModalChatStoryComponent implements OnInit {
8
+ private alertCtrl;
9
+ private modalCtrl;
10
+ private personServ;
11
+ private navCtrl;
12
+ private route;
13
+ title: string;
14
+ subtitle: string;
15
+ desc: string;
16
+ promptTpl: string;
17
+ type: string;
18
+ now: Date;
19
+ chatSession: Parse.Object | any | undefined;
20
+ isCreating: boolean;
21
+ Story: any;
22
+ story: Parse.Object | undefined;
23
+ onBreakPointSet: Function | undefined;
24
+ onCanDismiss: Function | undefined;
25
+ constructor(alertCtrl: AlertController, modalCtrl: ModalController, personServ: PersonService, navCtrl: NavController, route: ActivatedRoute);
26
+ relationName: string;
27
+ defaultAvatar: string;
28
+ person: Parse.Object | undefined;
29
+ ngOnInit(): void;
30
+ loadPerson(): Promise<void>;
31
+ summaryContent: any;
32
+ createStory(): Promise<void>;
33
+ confirm(): void;
34
+ cancel(): void;
35
+ static ɵfac: i0.ɵɵFactoryDeclaration<ModalChatStoryComponent, never>;
36
+ static ɵcmp: i0.ɵɵComponentDeclaration<ModalChatStoryComponent, "app-modal-chat-story", never, { "title": { "alias": "title"; "required": false; }; "subtitle": { "alias": "subtitle"; "required": false; }; "desc": { "alias": "desc"; "required": false; }; "promptTpl": { "alias": "promptTpl"; "required": false; }; "type": { "alias": "type"; "required": false; }; "isCreating": { "alias": "isCreating"; "required": false; }; "story": { "alias": "story"; "required": false; }; }, {}, never, never, true, never>;
37
+ }
38
+ export declare function openChatStoryModal(modalCtrl: ModalController, chatSession: Parse.Object, options?: {
39
+ type: string;
40
+ title: string;
41
+ subtitle: string;
42
+ desc: string;
43
+ promptTpl: string;
44
+ }): Promise<any>;
@@ -0,0 +1,12 @@
1
+ import { AgentStory } from '../../core';
2
+ import * as i0 from "@angular/core";
3
+ export declare class StoryService {
4
+ constructor();
5
+ storyList: Array<AgentStory> | undefined;
6
+ newStory(options?: {
7
+ book?: Parse.Object;
8
+ person?: Parse.Object;
9
+ }): AgentStory;
10
+ static ɵfac: i0.ɵɵFactoryDeclaration<StoryService, never>;
11
+ static ɵprov: i0.ɵɵInjectableDeclaration<StoryService>;
12
+ }
@@ -1,10 +1,9 @@
1
- import './lib/recorder/engine-pcm';
2
- import './lib/recorder/engine-wav';
3
- import './lib/recorder/extension-waveview';
1
+ import 'recorder-core/src/engine/pcm';
2
+ import 'recorder-core/src/engine/wav';
3
+ import 'recorder-core/src/extensions/waveview';
4
4
  import { WebSpeech } from './class-asr';
5
5
  import { Platform } from '@ionic/angular';
6
6
  import { Diagnostic } from '@awesome-cordova-plugins/diagnostic/ngx';
7
- import * as i0 from "@angular/core";
8
7
  export declare class FmodeVoiceService {
9
8
  private platform;
10
9
  private diagnostic;
@@ -123,6 +122,4 @@ export declare class FmodeVoiceService {
123
122
  requestMicPermission(): Promise<void>;
124
123
  requestStoagePermission(): Promise<void>;
125
124
  requestCameraPermission(): Promise<void>;
126
- static ɵfac: i0.ɵɵFactoryDeclaration<FmodeVoiceService, never>;
127
- static ɵprov: i0.ɵɵInjectableDeclaration<FmodeVoiceService>;
128
125
  }
@@ -1,5 +1,6 @@
1
1
  export * from "./fmode-voice.service";
2
- export * from "./audio.player";
3
- export * from "./stream.player";
2
+ export * from "./lib/audio/audio.player";
3
+ export * from "./lib/audio/streamer.microsoft";
4
4
  export * from "./class-asr";
5
5
  export * from "./tts";
6
+ export * from "./lib/audio/streamer.microsoft";
@@ -0,0 +1,33 @@
1
+ /**
2
+ * Interface for audio streaming components
3
+ */
4
+ export interface AudioStreamer {
5
+ /**
6
+ * Writes audio data to the stream
7
+ * @param audioData The audio data to write
8
+ */
9
+ write(audioData: ArrayBuffer): void;
10
+ /**
11
+ * Stops playback and cleans up resources
12
+ */
13
+ stop(): void;
14
+ /**
15
+ * Closes the stream (finalizes playback)
16
+ */
17
+ /**
18
+ * Indicates whether the stream is currently playing audio
19
+ */
20
+ isPlaying: boolean;
21
+ /**
22
+ * Indicates whether the stream has been closed
23
+ */
24
+ isClosed?: boolean;
25
+ /**
26
+ * Optional event emitter/callback system for stream events
27
+ */
28
+ eventMap?: {
29
+ onStart?: () => void;
30
+ onStop?: () => void;
31
+ onError?: (error: Error) => void;
32
+ };
33
+ }
@@ -1,6 +1,6 @@
1
- import { PushAudioOutputStreamCallback } from "microsoft-cognitiveservices-speech-sdk/distrib/lib/src/sdk/Audio/PushAudioOutputStreamCallback";
2
1
  import { Subject } from 'rxjs';
3
- export declare class FmPushAudioOutputStreamCallback extends PushAudioOutputStreamCallback {
2
+ import { AudioStreamer } from "./audio.streamer";
3
+ export declare class FmPushAudioOutputStreamCallback implements AudioStreamer {
4
4
  audioContext: AudioContext;
5
5
  audioDataSubject: Subject<ArrayBuffer>;
6
6
  playedSubject: Subject<boolean>;
@@ -0,0 +1,45 @@
1
+ import { AudioStreamer } from "./audio.streamer";
2
+ export declare class PCMStreamer implements AudioStreamer {
3
+ private readonly sampleRate;
4
+ private readonly numChannels;
5
+ private readonly bitsPerSample;
6
+ private bufferQueue;
7
+ isPlaying: boolean;
8
+ private audioContext;
9
+ private currentSource;
10
+ private nextPlayTime;
11
+ private bufferedDuration;
12
+ private readonly minBufferDuration;
13
+ private readonly targetBufferDuration;
14
+ private readonly maxBufferDuration;
15
+ private readonly mergeThreshold;
16
+ constructor(sampleRate?: number, numChannels?: number, bitsPerSample?: number);
17
+ /**
18
+ * 写入PCM数据到缓冲区
19
+ */
20
+ write(pcmData: ArrayBuffer): void;
21
+ /**
22
+ * 开始播放流程
23
+ */
24
+ private startPlayback;
25
+ /**
26
+ * 处理缓冲区数据
27
+ */
28
+ private processBuffer;
29
+ /**
30
+ * 智能合并缓冲区
31
+ */
32
+ private mergeBuffers;
33
+ /**
34
+ * 计算PCM数据的持续时间(秒)
35
+ */
36
+ private calculateDuration;
37
+ /**
38
+ * 填充音频缓冲区
39
+ */
40
+ private fillAudioBuffer;
41
+ /**
42
+ * 停止播放并清空缓冲区
43
+ */
44
+ stop(): void;
45
+ }
@@ -1,52 +1,32 @@
1
1
  import Parse from "parse";
2
2
  import { NovaUploadService } from "../../../storage/service-upload/nova-upload.service";
3
- import { AudioPlayer } from "../audio.player";
4
- import { FmPushAudioOutputStreamCallback } from "../stream.player";
5
- interface FmodeTTSEvent {
6
- onSpeakBefore?(): void;
7
- onStreamStarted?(): void;
8
- onAudioCompleted?(): void;
9
- }
3
+ import { AudioPlayer } from "../lib/audio/audio.player";
4
+ import { FmodeTTSEvent, FmodeTTSProvider } from "./int-tts-provider";
5
+ import { AudioStreamer } from "../lib/audio/audio.streamer";
10
6
  /**
11
7
  * FmodeTTS
12
- * 每个类,表示一次独立的语音合成服务
8
+ * 每个实例表示一次独立的语音合成服务
13
9
  */
14
10
  export declare class FmodeTTS {
15
- private speechConfig;
16
- private audioConfig;
17
- private synthesizer;
18
- private subscriptionKey;
19
- private authorizationToken;
20
- private region;
11
+ private static activeInstance;
12
+ private provider;
21
13
  eventMap: FmodeTTSEvent;
22
14
  uploadServ?: NovaUploadService;
23
- isPlaying?: boolean;
15
+ isPlaying: boolean;
24
16
  audioPlayer: AudioPlayer;
25
- audioStream: FmPushAudioOutputStreamCallback;
17
+ audioStream: AudioStreamer;
26
18
  stop(): void;
19
+ config: any;
27
20
  constructor(config: {
28
21
  region: string;
29
- subscriptionKey: string;
30
- token: string;
22
+ audioStream?: AudioStreamer;
23
+ subscriptionKey?: string;
24
+ token?: string;
25
+ provider?: FmodeTTSProvider;
31
26
  }, uploadServ?: NovaUploadService);
32
- extractTextFromXML(inputString: any): string;
33
- extractSSMLContent(inputString: any): any;
34
- /**
35
- * 合成语言并播放
36
- * @param textOrSSML
37
- * @desc
38
- * 普通文本
39
- * SSML https://learn.microsoft.com/zh-cn/azure/ai-services/speech-service/how-to-speech-synthesis?tabs=browserjs%2Cterminal&pivots=programming-language-javascript#use-ssml-to-customize-speech-characteristics
40
- * @returns
41
- */
27
+ extractTextFromXML(inputString: string): string;
28
+ extractSSMLContent(inputString: string): string;
42
29
  speakAsync(textOrSSML: string, chatVoice?: Parse.Object, eventMap?: any): Promise<Parse.Object>;
43
- onBreak(options: {
44
- playedTime: string;
45
- playedText: string;
46
- leftText: string;
47
- }): void;
48
- fixMarkdownChar(md: any): any;
49
- playAudioData(audioData: string, chatVoice: Parse.Object, eventMap: any): Promise<void>;
50
- uploadAndSaveVoice(blob: any, chatVoice: any): Promise<string>;
30
+ private playAudioData;
31
+ private uploadAndSaveVoice;
51
32
  }
52
- export {};
@@ -1 +1,4 @@
1
1
  export * from "./fmode-tts-class";
2
+ export * from "./provider-doubao";
3
+ export * from "./provider-microsoft";
4
+ export * from "../lib/audio/streamer.pcm";