fmode-ng 0.0.113 → 0.0.115

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 (275) hide show
  1. package/LICENSE.md +8 -0
  2. package/README.md +37 -37
  3. package/esm2022/fmode-ng.mjs +10 -5
  4. package/esm2022/lib/aigc/agent/fm-agent-task/fm-agent-task.component.mjs +8 -92
  5. package/esm2022/lib/aigc/agent/index.mjs +10 -3
  6. package/esm2022/lib/aigc/avatar/avatar.module.mjs +10 -45
  7. package/esm2022/lib/aigc/avatar/comp-avatar-particle/avatar.role.mjs +10 -2
  8. package/esm2022/lib/aigc/avatar/comp-avatar-particle/comp-avatar-particle.component.mjs +10 -315
  9. package/esm2022/lib/aigc/avatar/comp-avatar-particle/index.mjs +10 -3
  10. package/esm2022/lib/aigc/avatar/comp-avatar-particle/role-points.class.mjs +10 -57
  11. package/esm2022/lib/aigc/avatar/comp-avatar-role-image/comp-avatar-role-image.component.mjs +10 -98
  12. package/esm2022/lib/aigc/avatar/comp-avatar-role-video/comp-avatar-role-video.component.mjs +10 -107
  13. package/esm2022/lib/aigc/avatar/comp-avatar-talk/comp-avatar-talk.component.mjs +10 -113
  14. package/esm2022/lib/aigc/avatar/index.mjs +10 -8
  15. package/esm2022/lib/aigc/avatar/interface-avatar-role.mjs +10 -2
  16. package/esm2022/lib/aigc/avatar/modal-chat-voice-input/modal-chat-voice-input.component.mjs +8 -164
  17. package/esm2022/lib/aigc/chat/chat-header-area/comp-header-area.component.mjs +10 -49
  18. package/esm2022/lib/aigc/chat/chat-header-area/index.mjs +10 -2
  19. package/esm2022/lib/aigc/chat/chat-list/chat-list.component.mjs +8 -155
  20. package/esm2022/lib/aigc/chat/chat-list/index.mjs +10 -2
  21. package/esm2022/lib/aigc/chat/chat-message-area/comp-message-area.component.mjs +10 -40
  22. package/esm2022/lib/aigc/chat/chat-message-area/index.mjs +10 -2
  23. package/esm2022/lib/aigc/chat/chat-message-card/comp-message-card.component.mjs +10 -140
  24. package/esm2022/lib/aigc/chat/chat-message-card/duration-str.pipe.mjs +10 -29
  25. package/esm2022/lib/aigc/chat/chat-message-card/index.mjs +10 -3
  26. package/esm2022/lib/aigc/chat/chat-modal-input/index.mjs +10 -3
  27. package/esm2022/lib/aigc/chat/chat-modal-input/modal-audio-message/modal-audio-message.component.mjs +8 -193
  28. package/esm2022/lib/aigc/chat/chat-modal-input/modal-input.component.mjs +10 -331
  29. package/esm2022/lib/aigc/chat/chat-panel/chat-panel.component.mjs +8 -249
  30. package/esm2022/lib/aigc/chat/comp-role-prompt/comp-role-prompt.component.mjs +10 -83
  31. package/esm2022/lib/aigc/chat/comp-role-prompt/index.mjs +10 -2
  32. package/esm2022/lib/aigc/chat/index.mjs +10 -8
  33. package/esm2022/lib/aigc/comp-markdown-preview/clipboard.service.mjs +10 -82
  34. package/esm2022/lib/aigc/comp-markdown-preview/markdown-parse.mjs +8 -367
  35. package/esm2022/lib/aigc/comp-markdown-preview/markdown-preview.component.mjs +10 -51
  36. package/esm2022/lib/aigc/comp-markdown-preview/markdown-preview.module.mjs +10 -24
  37. package/esm2022/lib/aigc/comp-markdown-preview/plugins/md-mathjax/index.mjs +10 -115
  38. package/esm2022/lib/aigc/index.mjs +10 -14
  39. package/esm2022/lib/aigc/service-fmai/fmai.service.mjs +10 -21
  40. package/esm2022/lib/aigc/service-fmai/service-chat/chat-class.mjs +10 -2
  41. package/esm2022/lib/aigc/service-fmai/service-chat/chat.service.mjs +8 -174
  42. package/esm2022/lib/aigc/service-fmai/service-chat/index.mjs +10 -7
  43. package/esm2022/lib/aigc/service-fmai/service-chat/mask-list.mjs +9 -194
  44. package/esm2022/lib/aigc/service-fmai/service-chat/pipes/chat-content.pipe.mjs +10 -27
  45. package/esm2022/lib/aigc/service-fmai/service-chat/pipes/hidexml.pipe.mjs +10 -27
  46. package/esm2022/lib/aigc/service-fmai/service-chat/utilnow.pipe.mjs +10 -68
  47. package/esm2022/lib/aigc/service-fmai/service-imagine/imagine-func.mjs +9 -162
  48. package/esm2022/lib/aigc/service-fmai/service-imagine/imagine-work.mjs +10 -68
  49. package/esm2022/lib/aigc/service-fmai/service-imagine/imagine.service.mjs +8 -313
  50. package/esm2022/lib/aigc/service-fmai/service-imagine/index.mjs +10 -4
  51. package/esm2022/lib/aigc/story/fm-office-viewer/fm-office-viewer.component.mjs +10 -62
  52. package/esm2022/lib/aigc/story/fm-story-card/fm-story-card.component.mjs +10 -87
  53. package/esm2022/lib/aigc/story/fm-story-list/fm-story-list.component.mjs +10 -345
  54. package/esm2022/lib/aigc/story/fm-story-list/story-preview.mjs +10 -81
  55. package/esm2022/lib/aigc/story/fm-story-loader/fm-story-loader.component.mjs +10 -152
  56. package/esm2022/lib/aigc/story/fm-story-splitter/fm-story-splitter.component.mjs +10 -42
  57. package/esm2022/lib/aigc/story/index.mjs +10 -6
  58. package/esm2022/lib/aigc/story/modal-chat-story/comp-chat-story-json/comp-chat-story-json.component.mjs +10 -47
  59. package/esm2022/lib/aigc/story/modal-chat-story/comp-diary-story/comp-diary-story.component.mjs +10 -95
  60. package/esm2022/lib/aigc/story/modal-chat-story/modal-chat-story.component.mjs +10 -253
  61. package/esm2022/lib/aigc/story/story.service.mjs +10 -35
  62. package/esm2022/lib/aigc/voice/fmode-voice.service.mjs +10 -636
  63. package/esm2022/lib/aigc/voice/index.mjs +10 -7
  64. package/esm2022/lib/aigc/voice/lib/audio/audio.player.mjs +10 -55
  65. package/esm2022/lib/aigc/voice/lib/audio/audio.streamer.mjs +10 -2
  66. package/esm2022/lib/aigc/voice/lib/audio/streamer.microsoft.mjs +10 -96
  67. package/esm2022/lib/aigc/voice/lib/audio/streamer.pcm.mjs +8 -177
  68. package/esm2022/lib/aigc/voice/lib/pcm2wav.mjs +10 -38
  69. package/esm2022/lib/aigc/voice/lib/recorder/extension-waveview.mjs +10 -215
  70. package/esm2022/lib/aigc/voice/lib/resample.mjs +10 -34
  71. package/esm2022/lib/aigc/voice/tts/fmode-tts-class.mjs +10 -189
  72. package/esm2022/lib/aigc/voice/tts/index.mjs +10 -5
  73. package/esm2022/lib/aigc/voice/tts/int-tts-provider.mjs +10 -2
  74. package/esm2022/lib/aigc/voice/tts/provider-doubao.mjs +8 -346
  75. package/esm2022/lib/code/fm-codemirror/fm-codemirror.component.mjs +8 -342
  76. package/esm2022/lib/code/index.mjs +10 -2
  77. package/esm2022/lib/core/agent/chat/completion/fmode-completion.mjs +8 -430
  78. package/esm2022/lib/core/agent/chat/completion/index.mjs +10 -2
  79. package/esm2022/lib/core/agent/chat/completion/int-gpt-chat-options.mjs +10 -2
  80. package/esm2022/lib/core/agent/chat/fmode-chat.mjs +8 -617
  81. package/esm2022/lib/core/agent/chat/index.mjs +10 -4
  82. package/esm2022/lib/core/agent/chat/interface.mjs +10 -2
  83. package/esm2022/lib/core/agent/index.mjs +10 -6
  84. package/esm2022/lib/core/agent/prompt/agent.prompt.mjs +10 -133
  85. package/esm2022/lib/core/agent/prompt/index.mjs +10 -2
  86. package/esm2022/lib/core/agent/prompt/prompt-util.mjs +10 -16
  87. package/esm2022/lib/core/agent/story/agent.story.mjs +10 -64
  88. package/esm2022/lib/core/agent/story/index.mjs +10 -2
  89. package/esm2022/lib/core/agent/task/agent.task.mjs +10 -90
  90. package/esm2022/lib/core/agent/task/index.mjs +10 -2
  91. package/esm2022/lib/core/agent/waiting/index.mjs +10 -3
  92. package/esm2022/lib/core/agent/waiting/loading/loading.ctrl.mjs +10 -279
  93. package/esm2022/lib/core/agent/waiting/tips/tips.ctrl.mjs +8 -190
  94. package/esm2022/lib/core/index.mjs +10 -4
  95. package/esm2022/lib/core/parse/datatype/acl.mjs +10 -57
  96. package/esm2022/lib/core/parse/datatype/file.mjs +10 -69
  97. package/esm2022/lib/core/parse/datatype/geopoint.mjs +10 -57
  98. package/esm2022/lib/core/parse/datatype/relation.mjs +10 -56
  99. package/esm2022/lib/core/parse/fmode.cloud.mjs +10 -0
  100. package/esm2022/lib/core/parse/fmode.object.mjs +10 -232
  101. package/esm2022/lib/core/parse/fmode.parse.mjs +10 -84
  102. package/esm2022/lib/core/parse/fmode.query.mjs +8 -500
  103. package/esm2022/lib/core/parse/fmode.user.mjs +10 -275
  104. package/esm2022/lib/core/parse/index.mjs +10 -5
  105. package/esm2022/lib/core/parse/types.mjs +10 -2
  106. package/esm2022/lib/core/voice/index.mjs +10 -3
  107. package/esm2022/lib/core/voice/tts/index.mjs +10 -2
  108. package/esm2022/lib/icon/filetype/audio.svg.mjs +10 -3
  109. package/esm2022/lib/icon/filetype/avatar.svg.mjs +10 -14
  110. package/esm2022/lib/icon/filetype/chat.svg.mjs +10 -3
  111. package/esm2022/lib/icon/filetype/docx.svg.mjs +10 -3
  112. package/esm2022/lib/icon/filetype/file.svg.mjs +10 -3
  113. package/esm2022/lib/icon/filetype/filetype.pipe.mjs +10 -57
  114. package/esm2022/lib/icon/filetype/index.mjs +10 -12
  115. package/esm2022/lib/icon/filetype/md.svg.mjs +10 -3
  116. package/esm2022/lib/icon/filetype/pdf.svg.mjs +10 -3
  117. package/esm2022/lib/icon/filetype/pptx.svg.mjs +10 -3
  118. package/esm2022/lib/icon/filetype/svgtoblob.mjs +10 -8
  119. package/esm2022/lib/icon/filetype/video.svg.mjs +10 -3
  120. package/esm2022/lib/icon/filetype/xlsx.svg.mjs +10 -3
  121. package/esm2022/lib/icon/index.mjs +10 -2
  122. package/esm2022/lib/map/comp-poi-picker/comp-poi-picker.component.mjs +10 -209
  123. package/esm2022/lib/map/comp-poi-picker/comp-poi-picker.module.mjs +10 -33
  124. package/esm2022/lib/map/index.mjs +10 -4
  125. package/esm2022/lib/map/map.module.mjs +10 -61
  126. package/esm2022/lib/map/page-loca-scatter/page-loca-scatter.component.mjs +10 -132
  127. package/esm2022/lib/map/page-map.start/page-map.start.component.mjs +8 -115
  128. package/esm2022/lib/map/page-plan-route/page-plan-route.component.mjs +8 -118
  129. package/esm2022/lib/nova-cloud/index.mjs +10 -3
  130. package/esm2022/lib/nova-cloud/ncloud-api-func.mjs +10 -91
  131. package/esm2022/lib/nova-cloud/nova-cloud.service.mjs +10 -53
  132. package/esm2022/lib/payment/index.mjs +10 -2
  133. package/esm2022/lib/payment/payment/payment.component.mjs +10 -543
  134. package/esm2022/lib/payment/payment.service.mjs +10 -202
  135. package/esm2022/lib/person/comp-person-gender-icon/comp-person-gender-icon.component.mjs +10 -48
  136. package/esm2022/lib/person/comp-person-item/comp-person-item.component.mjs +10 -29
  137. package/esm2022/lib/person/comp-person-story/comp-person-story.component.mjs +10 -211
  138. package/esm2022/lib/person/edit-upload/edit-upload.component.mjs +8 -412
  139. package/esm2022/lib/person/edit-upload/edit-upload.module.mjs +10 -50
  140. package/esm2022/lib/person/index.mjs +10 -5
  141. package/esm2022/lib/person/modal-person-select/modal-person-select.component.mjs +10 -144
  142. package/esm2022/lib/person/modal-user-verify/secret-text.pipe.mjs +10 -41
  143. package/esm2022/lib/person/modal-user-verify/user-verify.component.mjs +10 -595
  144. package/esm2022/lib/person/person-detail/person-detail.component.mjs +10 -172
  145. package/esm2022/lib/person/person.service.mjs +8 -193
  146. package/esm2022/lib/platform/cross.service.mjs +10 -62
  147. package/esm2022/lib/platform/index.mjs +10 -2
  148. package/esm2022/lib/social/index.mjs +10 -2
  149. package/esm2022/lib/social/wechat/wechat-jssdk.service.mjs +8 -230
  150. package/esm2022/lib/storage/comp-hwobs-manager/hwobs-manager.component.mjs +10 -59
  151. package/esm2022/lib/storage/index.mjs +10 -5
  152. package/esm2022/lib/storage/service-hwobs/hwobs.service.mjs +8 -131
  153. package/esm2022/lib/storage/service-hwobs/index.mjs +10 -3
  154. package/esm2022/lib/storage/service-hwobs/typings/esdk-obs-browser.mjs +1 -1
  155. package/esm2022/lib/storage/service-upload/index.mjs +10 -2
  156. package/esm2022/lib/storage/service-upload/nova-upload.service.mjs +8 -513
  157. package/esm2022/lib/storage/service-upload/util-file-md5.mjs +10 -28
  158. package/esm2022/lib/storage/service-upload/util-file-metadata.mjs +10 -93
  159. package/esm2022/lib/storage/storage.module.mjs +10 -42
  160. package/esm2022/lib/text/fm-article-editor/article-editor-topbar/article-editor-topbar.component.mjs +10 -72
  161. package/esm2022/lib/text/fm-article-editor/article.service.mjs +10 -237
  162. package/esm2022/lib/text/fm-article-editor/comp-upload-book-banners/comp-upload-book-banners.component.mjs +8 -72
  163. package/esm2022/lib/text/fm-article-editor/draft.service.mjs +10 -207
  164. package/esm2022/lib/text/fm-article-editor/fm-article-aitool/fm-article-aitool.component.mjs +8 -227
  165. package/esm2022/lib/text/fm-article-editor/fm-article-draft/fm-article-draft.component.mjs +10 -303
  166. package/esm2022/lib/text/fm-article-editor/fm-article-editor.component.mjs +8 -371
  167. package/esm2022/lib/text/fm-article-editor/fm-article-outline/fm-article-outline.component.mjs +10 -94
  168. package/esm2022/lib/text/fm-article-editor/fm-article-outline-leftitem/fm-article-outline-leftitem.component.mjs +10 -36
  169. package/esm2022/lib/text/fm-article-editor/fm-article-preview/fm-article-preview.component.mjs +10 -281
  170. package/esm2022/lib/text/fm-article-editor/fm-article-write-options/fm-article-write-options.component.mjs +10 -72
  171. package/esm2022/lib/text/fm-article-editor/outline-count.pipe.mjs +10 -22
  172. package/esm2022/lib/text/fm-article-editor/prompt/prompt-insertion-article.mjs +10 -169
  173. package/esm2022/lib/text/fm-article-editor/task-article-generation.mjs +10 -69
  174. package/esm2022/lib/text/fm-article-editor/tasks/task-article-draft-create.mjs +10 -65
  175. package/esm2022/lib/text/fm-article-editor/tasks/task-article-outline-edit.mjs +10 -55
  176. package/esm2022/lib/text/fm-article-editor/tasks/task-article-outline.mjs +10 -142
  177. package/esm2022/lib/text/fm-article-editor/tasks/task-article-preview.mjs +10 -35
  178. package/esm2022/lib/text/fm-article-editor/tasks/task-article-writing-options.mjs +10 -81
  179. package/esm2022/lib/text/fm-article-editor/tasks/task-document-select.mjs +10 -50
  180. package/esm2022/lib/text/fm-text-quill/fm-text-quill.component.mjs +10 -145
  181. package/esm2022/lib/text/index.mjs +10 -4
  182. package/esm2022/lib/user/account/account.service.mjs +10 -222
  183. package/esm2022/lib/user/captcha/captcha.component.mjs +10 -135
  184. package/esm2022/lib/user/comp-user-avatar/comp-user-avatar.component.mjs +10 -66
  185. package/esm2022/lib/user/index.mjs +10 -17
  186. package/esm2022/lib/user/login/auth.guard.mjs +10 -28
  187. package/esm2022/lib/user/login/auth.service.mjs +8 -433
  188. package/esm2022/lib/user/login/login.component.mjs +10 -916
  189. package/esm2022/lib/user/modal-user-login/modal-user-login.component.mjs +10 -311
  190. package/esm2022/lib/user/profile/auth-profile.guard.mjs +10 -27
  191. package/esm2022/lib/user/profile/auth-profile.service.mjs +10 -122
  192. package/esm2022/lib/user/profile/profile-bind/profile-bind.component.mjs +10 -164
  193. package/esm2022/lib/user/profile/profile-bind/profile-confirm-modal.component.mjs +10 -79
  194. package/esm2022/lib/user/profile/profile.module.mjs +10 -54
  195. package/esm2022/lib/user/staff/index.mjs +10 -4
  196. package/esm2022/lib/user/staff/staff.guard.mjs +10 -26
  197. package/esm2022/lib/user/staff/staff.module.mjs +10 -18
  198. package/esm2022/lib/user/staff/staff.service.mjs +10 -85
  199. package/esm2022/lib/user/user-name.pipe.mjs +10 -29
  200. package/esm2022/lib/user/user.module.mjs +10 -102
  201. package/esm2022/lib/video/fm-video/fm-video.component.mjs +10 -67
  202. package/esm2022/lib/video/index.mjs +10 -2
  203. package/esm2022/public-api.mjs +10 -21
  204. package/fesm2022/fmode-ng.mjs +7 -19788
  205. package/fesm2022/fmode-ng.mjs.map +1 -1
  206. package/lib/aigc/avatar/comp-avatar-role-image/comp-avatar-role-image.component.d.ts +2 -2
  207. package/lib/aigc/avatar/comp-avatar-role-video/comp-avatar-role-video.component.d.ts +2 -2
  208. package/lib/aigc/avatar/comp-avatar-talk/comp-avatar-talk.component.d.ts +2 -2
  209. package/lib/aigc/chat/chat-list/chat-list.component.d.ts +3 -2
  210. package/lib/aigc/chat/chat-message-card/comp-message-card.component.d.ts +3 -3
  211. package/lib/aigc/chat/chat-modal-input/modal-audio-message/modal-audio-message.component.d.ts +2 -2
  212. package/lib/aigc/chat/chat-modal-input/modal-input.component.d.ts +3 -3
  213. package/lib/aigc/service-fmai/service-imagine/imagine-func.d.ts +3 -3
  214. package/lib/aigc/service-fmai/service-imagine/imagine-work.d.ts +4 -4
  215. package/lib/aigc/service-fmai/service-imagine/imagine.service.d.ts +6 -6
  216. package/lib/aigc/story/fm-office-viewer/fm-office-viewer.component.d.ts +2 -2
  217. package/lib/aigc/story/fm-story-card/fm-story-card.component.d.ts +2 -1
  218. package/lib/aigc/story/fm-story-list/fm-story-list.component.d.ts +6 -6
  219. package/lib/aigc/story/fm-story-list/story-preview.d.ts +4 -4
  220. package/lib/aigc/story/fm-story-loader/fm-story-loader.component.d.ts +3 -3
  221. package/lib/aigc/story/fm-story-splitter/fm-story-splitter.component.d.ts +2 -2
  222. package/lib/aigc/story/modal-chat-story/comp-chat-story-json/comp-chat-story-json.component.d.ts +3 -2
  223. package/lib/aigc/story/modal-chat-story/comp-diary-story/comp-diary-story.component.d.ts +3 -2
  224. package/lib/aigc/story/modal-chat-story/modal-chat-story.component.d.ts +6 -6
  225. package/lib/aigc/story/story.service.d.ts +3 -2
  226. package/lib/aigc/voice/tts/fmode-tts-class.d.ts +2 -2
  227. package/lib/core/agent/chat/fmode-chat.d.ts +11 -11
  228. package/lib/core/agent/story/agent.story.d.ts +8 -8
  229. package/lib/core/parse/datatype/geopoint.d.ts +5 -1
  230. package/lib/core/parse/fmode.cloud.d.ts +32 -0
  231. package/lib/core/parse/fmode.object.d.ts +2 -2
  232. package/lib/core/parse/fmode.parse.d.ts +15 -9
  233. package/lib/core/parse/fmode.query.d.ts +41 -2
  234. package/lib/core/parse/fmode.user.d.ts +1 -0
  235. package/lib/core/parse/index.d.ts +1 -0
  236. package/lib/core/parse/types.d.ts +2 -0
  237. package/lib/map/comp-poi-picker/comp-poi-picker.component.d.ts +5 -5
  238. package/lib/payment/payment/payment.component.d.ts +3 -3
  239. package/lib/payment/payment.service.d.ts +4 -4
  240. package/lib/person/comp-person-gender-icon/comp-person-gender-icon.component.d.ts +2 -1
  241. package/lib/person/comp-person-item/comp-person-item.component.d.ts +2 -1
  242. package/lib/person/comp-person-story/comp-person-story.component.d.ts +13 -13
  243. package/lib/person/edit-upload/edit-upload.component.d.ts +1 -1
  244. package/lib/person/modal-person-select/modal-person-select.component.d.ts +5 -5
  245. package/lib/person/modal-user-verify/user-verify.component.d.ts +5 -5
  246. package/lib/person/person-detail/person-detail.component.d.ts +4 -4
  247. package/lib/person/person.service.d.ts +7 -7
  248. package/lib/storage/service-hwobs/hwobs.service.d.ts +4 -5
  249. package/lib/storage/service-upload/nova-upload.service.d.ts +5 -5
  250. package/lib/text/fm-article-editor/article-editor-topbar/article-editor-topbar.component.d.ts +2 -1
  251. package/lib/text/fm-article-editor/article.service.d.ts +12 -12
  252. package/lib/text/fm-article-editor/draft.service.d.ts +5 -5
  253. package/lib/text/fm-article-editor/fm-article-aitool/fm-article-aitool.component.d.ts +3 -2
  254. package/lib/text/fm-article-editor/fm-article-draft/fm-article-draft.component.d.ts +16 -17
  255. package/lib/text/fm-article-editor/fm-article-editor.component.d.ts +3 -3
  256. package/lib/text/fm-article-editor/fm-article-outline/fm-article-outline.component.d.ts +11 -10
  257. package/lib/text/fm-article-editor/fm-article-preview/fm-article-preview.component.d.ts +2 -2
  258. package/lib/text/fm-article-editor/prompt/prompt-insertion-article.d.ts +3 -3
  259. package/lib/text/fm-article-editor/task-article-generation.d.ts +5 -4
  260. package/lib/text/fm-article-editor/tasks/task-article-draft-create.d.ts +3 -3
  261. package/lib/text/fm-article-editor/tasks/task-article-outline-edit.d.ts +3 -3
  262. package/lib/text/fm-article-editor/tasks/task-article-outline.d.ts +3 -3
  263. package/lib/text/fm-article-editor/tasks/task-article-preview.d.ts +2 -1
  264. package/lib/text/fm-article-editor/tasks/task-article-writing-options.d.ts +3 -3
  265. package/lib/text/fm-article-editor/tasks/task-document-select.d.ts +3 -3
  266. package/lib/user/account/account.service.d.ts +2 -2
  267. package/lib/user/comp-user-avatar/comp-user-avatar.component.d.ts +2 -2
  268. package/lib/user/login/auth.service.d.ts +5 -5
  269. package/lib/user/login/login.component.d.ts +3 -3
  270. package/lib/user/profile/auth-profile.service.d.ts +8 -8
  271. package/lib/user/profile/profile-bind/profile-bind.component.d.ts +7 -7
  272. package/lib/user/profile/profile-bind/profile-confirm-modal.component.d.ts +2 -2
  273. package/lib/user/staff/staff.service.d.ts +3 -3
  274. package/lib/user/user-name.pipe.d.ts +2 -2
  275. package/package.json +12 -18
@@ -1,157 +1,10 @@
1
- import { CommonModule } from '@angular/common';
2
- import { Component, Input } from '@angular/core';
3
- import { AlertController, IonAvatar, IonButton, IonIcon, IonItem, IonLabel, IonList, IonNote, IonText, ModalController, NavController } from '@ionic/angular/standalone';
4
- import { ChatService } from "../../service-fmai/service-chat/chat.service";
5
- import { openChatPanelModal } from '../chat-panel/chat-panel.component';
6
- import * as i0 from "@angular/core";
7
- import * as i1 from "../../service-fmai/service-chat/chat.service";
8
- import * as i2 from "@ionic/angular/standalone";
9
- import * as i3 from "@angular/common";
10
- export class ChatListComponent {
11
- constructor(chatServ, alertCtrl, navCtrl, modalCtrl) {
12
- this.chatServ = chatServ;
13
- this.alertCtrl = alertCtrl;
14
- this.navCtrl = navCtrl;
15
- this.modalCtrl = modalCtrl;
16
- this.chatList = [];
17
- this.onItemClick = (chat, event) => {
18
- event.stopPropagation();
19
- this.goSession(chat);
20
- };
21
- /** 默认头像*/
22
- this.avatar = 'https://ionicframework.com/docs/img/demos/avatar.svg';
23
- this.isPreventGo = false;
24
- this.chatServ.getChatSession().then(() => {
25
- // console.log(this.chatServ.chatList);
26
- });
27
- }
28
- async goSession(chat) {
29
- if (this.isPreventGo)
30
- return;
31
- // this.tab.currentTab = ""
32
- if (chat?.rid || chat?.sid) {
33
- if (document.body.clientWidth < 700) {
34
- let options = {
35
- roleId: chat?.rid,
36
- chatId: chat?.sid
37
- };
38
- console.log("openChatPanelModal");
39
- openChatPanelModal(this.modalCtrl, options);
40
- return;
41
- }
42
- this.chatServ.restoreChatPanel(chat);
43
- }
44
- else {
45
- let alert = await this.alertCtrl.create({
46
- header: "注意",
47
- subHeader: "请您选择右侧角色",
48
- message: "开始对话",
49
- buttons: [
50
- {
51
- role: "ok", text: "知道了", handler: () => {
52
- }
53
- },
54
- ]
55
- });
56
- alert.present();
57
- this.navCtrl.navigateRoot("/chat/pro/mask");
58
- }
59
- }
1
+
60
2
  /**
61
- * 修改图标的功能组件
62
- * @param Id 会话Id
3
+ * @copyright © 未来飞马 © 未来全栈 www.fmode.cn
4
+ * 版权所有 © 未来飞马 © 江西脑控科技有限公司 Copyright © Fmode Technology Co., Ltd.
5
+ * 保留所有权利 All Rights Reserved.
6
+ * /home/ryan/workspace/nova/nova-admin/dist/fmode-ng/esm2022/lib/aigc/chat/chat-list/chat-list.component.mjs
63
7
  */
64
- async presentEditTitle(chatSession, chat, event) {
65
- event.stopPropagation();
66
- this.isPreventGo = true;
67
- setTimeout(() => { this.isPreventGo = false; }, 500);
68
- event.preventDefault(); // 防止触发父级点击事件
69
- const alert = await this.alertCtrl.create({
70
- header: '修改会话标题',
71
- subHeader: '',
72
- message: '',
73
- buttons: [
74
- {
75
- text: '取消',
76
- role: 'cancel',
77
- handler: () => {
78
- },
79
- },
80
- {
81
- text: '确定',
82
- role: 'confirm',
83
- handler: (data) => {
84
- chat.title = data.title;
85
- chatSession?.set('title', data.title);
86
- chatSession?.save();
87
- },
88
- },
89
- ],
90
- inputs: [
91
- {
92
- placeholder: '会话标题',
93
- name: 'title',
94
- value: chat?.title || ""
95
- }
96
- ]
97
- });
98
- // this.chatSessionId = Id
99
- await alert.present();
100
- }
101
- /**
102
- * 删除图标的功能组件
103
- * @param Id 会话Id
104
- */
105
- async presentDeleteTItle(chatSession, chat, event) {
106
- event.stopPropagation();
107
- this.isPreventGo = true;
108
- setTimeout(() => { this.isPreventGo = false; }, 500);
109
- event.preventDefault(); // 防止触发父级点击事件
110
- const alert = await this.alertCtrl.create({
111
- header: '确认删除?',
112
- subHeader: '',
113
- message: '',
114
- buttons: [
115
- {
116
- text: '取消',
117
- role: 'cancel',
118
- handler: () => {
119
- },
120
- },
121
- {
122
- text: '确定',
123
- role: 'confirm',
124
- handler: () => {
125
- chat.isHidden = true;
126
- chatSession?.set('isDeleted', true);
127
- chatSession?.save();
128
- },
129
- },
130
- ],
131
- });
132
- await alert.present();
133
- }
134
- /**
135
- * 绘画标题超出字数的部分用省略号代替
136
- * @param str 被执行的文本
137
- * @returns
138
- */
139
- truncateString(str) {
140
- if (str && str.length > 10) {
141
- return str.slice(0, 10) + '...';
142
- }
143
- return str;
144
- }
145
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ChatListComponent, deps: [{ token: i1.ChatService }, { token: i2.AlertController }, { token: i2.NavController }, { token: i2.ModalController }], target: i0.ɵɵFactoryTarget.Component }); }
146
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: ChatListComponent, isStandalone: true, selector: "app-chat-list", inputs: { onItemClick: "onItemClick" }, providers: [], ngImport: i0, template: "<ion-list>\r\n <ng-container *ngFor=\"let chat of (chatServ?.chatList || chatList)\">\r\n <ion-item [button]=\"true\" detail=\"false\" *ngIf=\"!chat?.isHidden\" (click)=\"onItemClick(chat,$event)\">\r\n <div class=\"unread-indicator-wrapper\" slot=\"start\">\r\n <div class=\"unread-indicator\"></div>\r\n </div>\r\n <ion-label>\r\n <div style=\"display: flex;justify-content: space-between; align-items: center;\">\r\n <div style=\"display: flex; flex-direction: row;align-items: center;\">\r\n <strong style=\"display: flex;align-items: center;\">\r\n <ion-avatar style=\"margin-right: 10px;\">\r\n <img [src]=\"chat?.thumb||avatar\" />\r\n </ion-avatar>\r\n <p style=\"max-width: 7rem;white-space: nowrap;\">{{truncateString(chat?.title)}}</p>\r\n </strong>\r\n\r\n <ion-icon (click)=\"presentEditTitle(chat?.session,chat,$event)\" name=\"brush-sharp\" style=\"color:#777777;margin-left: 1rem;\"></ion-icon>\r\n <ion-icon (click)=\"presentDeleteTItle(chat?.session,chat,$event)\" name=\"trash-sharp\" style=\"color:#777777;margin-left: 0.5rem;\"></ion-icon>\r\n \r\n </div>\r\n <div class=\"metadata-end-wrapper\" slot=\"end\">\r\n <ion-note color=\"medium\">{{chat?.latest | date:\"HH:mm\"}}</ion-note>\r\n <ion-icon color=\"medium\" name=\"chevron-forward\"></ion-icon>\r\n </div>\r\n </div>\r\n <ion-text></ion-text><br />\r\n <ion-note color=\"medium\" class=\"ion-text-wrap\">\r\n {{chat?.message}}\r\n </ion-note>\r\n </ion-label>\r\n </ion-item>\r\n </ng-container>\r\n </ion-list>", styles: ["ion-icon{color:#fff}ion-list{margin:3px}ion-list ion-item{--inner-padding-bottom:0px;--inner-padding-end:0px;--inner-padding-start:0px;--inner-padding-to:0px;--padding-bottom:0px;--padding-end:0px;--padding-start:0px;--padding-to:0px}ion-list ul{width:100%;list-style-type:none;padding:0;margin:0 0 10px;display:flex;flex-wrap:wrap;background-color:#fff;border-radius:10px}ion-list ul .active__{position:relative;padding:5px 15px;font-size:18px;font-weight:700;color:#535353;transition:.3s}ion-list ul .active{color:#2d8af7;background-color:#f2f4ff;border-radius:10px}ion-list ul li{flex:1 1 auto}ion-list ul li div{cursor:pointer;text-align:center}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i3.DatePipe, name: "date" }, { kind: "component", type: IonIcon, selector: "ion-icon", inputs: ["color", "flipRtl", "icon", "ios", "lazy", "md", "mode", "name", "sanitize", "size", "src"] }, { kind: "component", type: IonList, selector: "ion-list", inputs: ["inset", "lines", "mode"] }, { kind: "component", type: IonLabel, selector: "ion-label", inputs: ["color", "mode", "position"] }, { kind: "component", type: IonNote, selector: "ion-note", inputs: ["color", "mode"] }, { kind: "component", type: IonAvatar, selector: "ion-avatar" }, { kind: "component", type: IonItem, selector: "ion-item", inputs: ["button", "color", "detail", "detailIcon", "disabled", "download", "href", "lines", "mode", "rel", "routerAnimation", "routerDirection", "target", "type"] }, { kind: "component", type: IonText, selector: "ion-text", inputs: ["color", "mode"] }] }); }
147
- }
148
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ChatListComponent, decorators: [{
149
- type: Component,
150
- args: [{ selector: 'app-chat-list', imports: [
151
- CommonModule,
152
- IonIcon, IonList, IonLabel, IonNote, IonButton, IonAvatar, IonItem, IonText,
153
- ], providers: [], standalone: true, template: "<ion-list>\r\n <ng-container *ngFor=\"let chat of (chatServ?.chatList || chatList)\">\r\n <ion-item [button]=\"true\" detail=\"false\" *ngIf=\"!chat?.isHidden\" (click)=\"onItemClick(chat,$event)\">\r\n <div class=\"unread-indicator-wrapper\" slot=\"start\">\r\n <div class=\"unread-indicator\"></div>\r\n </div>\r\n <ion-label>\r\n <div style=\"display: flex;justify-content: space-between; align-items: center;\">\r\n <div style=\"display: flex; flex-direction: row;align-items: center;\">\r\n <strong style=\"display: flex;align-items: center;\">\r\n <ion-avatar style=\"margin-right: 10px;\">\r\n <img [src]=\"chat?.thumb||avatar\" />\r\n </ion-avatar>\r\n <p style=\"max-width: 7rem;white-space: nowrap;\">{{truncateString(chat?.title)}}</p>\r\n </strong>\r\n\r\n <ion-icon (click)=\"presentEditTitle(chat?.session,chat,$event)\" name=\"brush-sharp\" style=\"color:#777777;margin-left: 1rem;\"></ion-icon>\r\n <ion-icon (click)=\"presentDeleteTItle(chat?.session,chat,$event)\" name=\"trash-sharp\" style=\"color:#777777;margin-left: 0.5rem;\"></ion-icon>\r\n \r\n </div>\r\n <div class=\"metadata-end-wrapper\" slot=\"end\">\r\n <ion-note color=\"medium\">{{chat?.latest | date:\"HH:mm\"}}</ion-note>\r\n <ion-icon color=\"medium\" name=\"chevron-forward\"></ion-icon>\r\n </div>\r\n </div>\r\n <ion-text></ion-text><br />\r\n <ion-note color=\"medium\" class=\"ion-text-wrap\">\r\n {{chat?.message}}\r\n </ion-note>\r\n </ion-label>\r\n </ion-item>\r\n </ng-container>\r\n </ion-list>", styles: ["ion-icon{color:#fff}ion-list{margin:3px}ion-list ion-item{--inner-padding-bottom:0px;--inner-padding-end:0px;--inner-padding-start:0px;--inner-padding-to:0px;--padding-bottom:0px;--padding-end:0px;--padding-start:0px;--padding-to:0px}ion-list ul{width:100%;list-style-type:none;padding:0;margin:0 0 10px;display:flex;flex-wrap:wrap;background-color:#fff;border-radius:10px}ion-list ul .active__{position:relative;padding:5px 15px;font-size:18px;font-weight:700;color:#535353;transition:.3s}ion-list ul .active{color:#2d8af7;background-color:#f2f4ff;border-radius:10px}ion-list ul li{flex:1 1 auto}ion-list ul li div{cursor:pointer;text-align:center}\n"] }]
154
- }], ctorParameters: () => [{ type: i1.ChatService }, { type: i2.AlertController }, { type: i2.NavController }, { type: i2.ModalController }], propDecorators: { onItemClick: [{
155
- type: Input
156
- }] } });
157
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhdC1saXN0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Ztb2RlLW5nL3NyYy9saWIvYWlnYy9jaGF0L2NoYXQtbGlzdC9jaGF0LWxpc3QuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZm1vZGUtbmcvc3JjL2xpYi9haWdjL2NoYXQvY2hhdC1saXN0L2NoYXQtbGlzdC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDakQsT0FBTyxFQUFFLGVBQWUsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsUUFBUSxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUFFLGVBQWUsRUFBRSxhQUFhLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUN6SyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sOENBQThDLENBQUE7QUFDMUUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7Ozs7O0FBYXhFLE1BQU0sT0FBTyxpQkFBaUI7SUFHNUIsWUFDUyxRQUFvQixFQUNuQixTQUF5QixFQUN6QixPQUFxQixFQUNyQixTQUF5QjtRQUgxQixhQUFRLEdBQVIsUUFBUSxDQUFZO1FBQ25CLGNBQVMsR0FBVCxTQUFTLENBQWdCO1FBQ3pCLFlBQU8sR0FBUCxPQUFPLENBQWM7UUFDckIsY0FBUyxHQUFULFNBQVMsQ0FBZ0I7UUFObkMsYUFBUSxHQUFjLEVBQUUsQ0FBQTtRQWVmLGdCQUFXLEdBQVksQ0FBQyxJQUFRLEVBQUMsS0FBSyxFQUFDLEVBQUU7WUFDaEQsS0FBSyxDQUFDLGVBQWUsRUFBRSxDQUFDO1lBQ3hC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QUNILE1BQU0sS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUFDO0lBQ3hCLENBQUM7SUFFRDs7OztPQUlHO0lBQ0gsY0FBYyxDQUFDLEdBQVU7UUFDdkIsSUFBSSxHQUFHLElBQUksR0FBRyxDQUFDLE1BQU0sR0FBRyxFQUFFLEVBQUUsQ0FBQztZQUMzQixPQUFPLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxHQUFHLEtBQUssQ0FBQztRQUNsQyxDQUFDO1FBQ0QsT0FBTyxHQUFHLENBQUM7SUFDYixDQUFDOytHQWhKVSxpQkFBaUI7bUdBQWpCLGlCQUFpQixvR0FKbEIsRUFDVCwwQkNkSCwydkRBZ0NhLG9zQkR0QlQsWUFBWSxtVEFDWixPQUFPLDJKQUFDLE9BQU8seUZBQUMsUUFBUSw2RkFBQyxPQUFPLGdGQUFXLFNBQVMsdURBQUMsT0FBTywwTkFBQyxPQUFPOzs0RkFNM0QsaUJBQWlCO2tCQVo3QixTQUFTOytCQUNFLGVBQWUsV0FHakI7d0JBQ04sWUFBWTt3QkFDWixPQUFPLEVBQUMsT0FBTyxFQUFDLFFBQVEsRUFBQyxPQUFPLEVBQUMsU0FBUyxFQUFDLFNBQVMsRUFBQyxPQUFPLEVBQUMsT0FBTztxQkFDckUsYUFDUyxFQUNULGNBQ1UsSUFBSTt3S0FrQk4sV0FBVztzQkFBbkIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQWxlcnRDb250cm9sbGVyLCBJb25BdmF0YXIsIElvbkJ1dHRvbiwgSW9uSWNvbiwgSW9uSXRlbSwgSW9uTGFiZWwsIElvbkxpc3QsIElvbk5vdGUsIElvblRleHQsIE1vZGFsQ29udHJvbGxlciwgTmF2Q29udHJvbGxlciB9IGZyb20gJ0Bpb25pYy9hbmd1bGFyL3N0YW5kYWxvbmUnO1xyXG5pbXBvcnQgeyBDaGF0U2VydmljZSB9IGZyb20gXCIuLi8uLi9zZXJ2aWNlLWZtYWkvc2VydmljZS1jaGF0L2NoYXQuc2VydmljZVwiXHJcbmltcG9ydCB7IG9wZW5DaGF0UGFuZWxNb2RhbCB9IGZyb20gJy4uL2NoYXQtcGFuZWwvY2hhdC1wYW5lbC5jb21wb25lbnQnO1xyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FwcC1jaGF0LWxpc3QnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9jaGF0LWxpc3QuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2NoYXQtbGlzdC5jb21wb25lbnQuc2NzcyddLFxyXG4gIGltcG9ydHM6W1xyXG4gICAgQ29tbW9uTW9kdWxlLFxyXG4gICAgSW9uSWNvbixJb25MaXN0LElvbkxhYmVsLElvbk5vdGUsSW9uQnV0dG9uLElvbkF2YXRhcixJb25JdGVtLElvblRleHQsXHJcbiAgXSxcclxuICBwcm92aWRlcnM6W1xyXG4gIF0sXHJcbiAgc3RhbmRhbG9uZTp0cnVlXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBDaGF0TGlzdENvbXBvbmVudCB7XHJcbiAgY2hhdExpc3Q6QXJyYXk8YW55PiA9IFtdXHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHVibGljIGNoYXRTZXJ2OkNoYXRTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBhbGVydEN0cmw6QWxlcnRDb250cm9sbGVyLFxyXG4gICAgcHJpdmF0ZSBuYXZDdHJsOk5hdkNvbnRyb2xsZXIsXHJcbiAgICBwcml2YXRlIG1vZGFsQ3RybDpNb2RhbENvbnRyb2xsZXIsXHJcbiAgKXtcclxuXHJcbiAgICB0aGlzLmNoYXRTZXJ2LmdldENoYXRTZXNzaW9uKCkudGhlbigoKT0+e1xyXG4gICAgICAvLyBjb25zb2xlLmxvZyh0aGlzLmNoYXRTZXJ2LmNoYXRMaXN0KTtcclxuICAgIH0pXHJcbiAgfVxyXG5cclxuXHJcbiAgQElucHV0KCkgb25JdGVtQ2xpY2s6RnVuY3Rpb24gPSAoY2hhdDphbnksZXZlbnQpPT57XHJcbiAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcclxuICAgIHRoaXMuZ29TZXNzaW9uKGNoYXQpXHJcbiAgfVxyXG5cclxuXHJcbiAgLyoqIOm7mOiupOWktOWDjyovXHJcbiAgYXZhdGFyOnN0cmluZz0naHR0cHM6Ly9pb25pY2ZyYW1ld29yay5jb20vZG9jcy9pbWcvZGVtb3MvYXZhdGFyLnN2ZydcclxuICBhc3luYyBnb1Nlc3Npb24oY2hhdCl7XHJcbiAgICBpZih0aGlzLmlzUHJldmVudEdvKSByZXR1cm5cclxuICAgIC8vIHRoaXMudGFiLmN1cnJlbnRUYWIgPSBcIlwiXHJcbiAgICBpZihjaGF0Py5yaWQgfHwgY2hhdD8uc2lkKXsgIFxyXG4gICAgICBpZihkb2N1bWVudC5ib2R5LmNsaWVudFdpZHRoPDcwMCl7XHJcbiAgICAgICAgbGV0IG9wdGlvbnM6YW55ID0ge1xyXG4gICAgICAgICAgcm9sZUlkOmNoYXQ/LnJpZCxcclxuICAgICAgICAgIGNoYXRJZDpjaGF0Py5zaWRcclxuICAgICAgICB9XHJcbiAgICAgICAgY29uc29sZS5sb2coXCJvcGVuQ2hhdFBhbmVsTW9kYWxcIilcclxuICAgICAgICBvcGVuQ2hhdFBhbmVsTW9kYWwodGhpcy5tb2RhbEN0cmwsb3B0aW9ucylcclxuICAgICAgICByZXR1cm5cclxuICAgICAgfVxyXG4gICAgICB0aGlzLmNoYXRTZXJ2LnJlc3RvcmVDaGF0UGFuZWwoY2hhdClcclxuICAgIH1lbHNle1xyXG4gICAgICBsZXQgYWxlcnQgPSBhd2FpdCB0aGlzLmFsZXJ0Q3RybC5jcmVhdGUoe1xyXG4gICAgICAgIGhlYWRlcjpcIuazqOaEj1wiLFxyXG4gICAgICAgIHN1YkhlYWRlcjpcIuivt+aCqOmAieaLqeWPs+S+p+inkuiJslwiLFxyXG4gICAgICAgIG1lc3NhZ2U6XCLlvIDlp4vlr7nor51cIixcclxuICAgICAgICBidXR0b25zOltcclxuICAgICAgICAgIHtcclxuICAgICAgICAgICAgcm9sZTpcIm9rXCIsdGV4dDpcIuefpemBk+S6hlwiLGhhbmRsZXI6KCk9PntcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfSxcclxuICAgICAgICBdXHJcbiAgICAgIH0pXHJcbiAgICAgIGFsZXJ0LnByZXNlbnQoKTtcclxuICAgICAgdGhpcy5uYXZDdHJsLm5hdmlnYXRlUm9vdChcIi9jaGF0L3Byby9tYXNrXCIpXHJcblxyXG4gICAgfVxyXG4gIH1cclxuXHJcblxyXG4gIGlzUHJldmVudEdvOmJvb2xlYW4gPSBmYWxzZTtcclxuICAvKipcclxuICAgKiDkv67mlLnlm77moIfnmoTlip/og73nu4Tku7ZcclxuICAgKiBAcGFyYW0gSWQg5Lya6K+dSWRcclxuICAgKi9cclxuICBhc3luYyBwcmVzZW50RWRpdFRpdGxlKGNoYXRTZXNzaW9uOlBhcnNlLk9iamVjdCxjaGF0OmFueSxldmVudDpFdmVudCkge1xyXG4gICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKClcclxuICAgIHRoaXMuaXNQcmV2ZW50R28gPSB0cnVlO3NldFRpbWVvdXQoKCk9Pnt0aGlzLmlzUHJldmVudEdvPWZhbHNlfSw1MDApXHJcbiAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpOyAvLyDpmLLmraLop6blj5HniLbnuqfngrnlh7vkuovku7ZcclxuICAgIGNvbnN0IGFsZXJ0ID0gYXdhaXQgdGhpcy5hbGVydEN0cmwuY3JlYXRlKHtcclxuICAgICAgaGVhZGVyOiAn5L+u5pS55Lya6K+d5qCH6aKYJyxcclxuICAgICAgc3ViSGVhZGVyOiAnJyxcclxuICAgICAgbWVzc2FnZTogJycsXHJcbiAgICAgIGJ1dHRvbnM6W1xyXG4gICAgICAgIHtcclxuICAgICAgICAgIHRleHQ6ICflj5bmtognLFxyXG4gICAgICAgICAgcm9sZTogJ2NhbmNlbCcsXHJcbiAgICAgICAgICBoYW5kbGVyOiAoKSA9PiB7XHJcbiAgICBcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgfSxcclxuICAgICAgICB7XHJcbiAgICAgICAgICB0ZXh0OiAn56Gu5a6aJyxcclxuICAgICAgICAgIHJvbGU6ICdjb25maXJtJyxcclxuICAgICAgICAgIGhhbmRsZXI6IChkYXRhKSA9PiB7XHJcbiAgICAgICAgICAgIGNoYXQudGl0bGUgPSBkYXRhLnRpdGxlXHJcbiAgICAgICAgICAgIGNoYXRTZXNzaW9uPy5zZXQoJ3RpdGxlJyxkYXRhLnRpdGxlKVxyXG4gICAgICAgICAgICBjaGF0U2Vzc2lvbj8uc2F2ZSgpXHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgIH0sXHJcbiAgICAgIF0sXHJcbiAgICAgIGlucHV0czpbXHJcbiAgICAgICAge1xyXG4gICAgICAgICAgcGxhY2Vob2xkZXI6ICfkvJror53moIfpopgnLFxyXG4gICAgICAgICAgbmFtZTogJ3RpdGxlJyxcclxuICAgICAgICAgIHZhbHVlOmNoYXQ/LnRpdGxlIHx8IFwiXCJcclxuICAgICAgICB9XHJcbiAgICAgIF1cclxuICAgIH0pO1xyXG4gICAgLy8gdGhpcy5jaGF0U2Vzc2lvbklkID0gSWRcclxuICAgIGF3YWl0IGFsZXJ0LnByZXNlbnQoKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIOWIoOmZpOWbvuagh+eahOWKn+iDvee7hOS7tlxyXG4gICAqIEBwYXJhbSBJZCDkvJror51JZFxyXG4gICAqL1xyXG4gIGFzeW5jIHByZXNlbnREZWxldGVUSXRsZShjaGF0U2Vzc2lvbjpQYXJzZS5PYmplY3QsY2hhdDphbnksZXZlbnQ6RXZlbnQpIHtcclxuICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpXHJcbiAgICB0aGlzLmlzUHJldmVudEdvID0gdHJ1ZTtzZXRUaW1lb3V0KCgpPT57dGhpcy5pc1ByZXZlbnRHbz1mYWxzZX0sNTAwKVxyXG4gICAgZXZlbnQucHJldmVudERlZmF1bHQoKTsgLy8g6Ziy5q2i6Kem5Y+R54i257qn54K55Ye75LqL5Lu2XHJcbiAgICBjb25zdCBhbGVydCA9IGF3YWl0IHRoaXMuYWxlcnRDdHJsLmNyZWF0ZSh7XHJcbiAgICAgIGhlYWRlcjogJ+ehruiupOWIoOmZpO+8nycsXHJcbiAgICAgIHN1YkhlYWRlcjogJycsXHJcbiAgICAgIG1lc3NhZ2U6ICcnLFxyXG4gICAgICBidXR0b25zOltcclxuICAgICAgICB7XHJcbiAgICAgICAgICB0ZXh0OiAn5Y+W5raIJyxcclxuICAgICAgICAgIHJvbGU6ICdjYW5jZWwnLFxyXG4gICAgICAgICAgaGFuZGxlcjogKCkgPT4ge1xyXG4gICAgXHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgIH0sXHJcbiAgICAgICAge1xyXG4gICAgICAgICAgdGV4dDogJ+ehruWumicsXHJcbiAgICAgICAgICByb2xlOiAnY29uZmlybScsXHJcbiAgICAgICAgICBoYW5kbGVyOiAoKSA9PiB7XHJcbiAgICAgICAgICAgIGNoYXQuaXNIaWRkZW4gPSB0cnVlO1xyXG4gICAgICAgICAgICBjaGF0U2Vzc2lvbj8uc2V0KCdpc0RlbGV0ZWQnLHRydWUpXHJcbiAgICAgICAgICAgIGNoYXRTZXNzaW9uPy5zYXZlKClcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgfSxcclxuICAgICAgXSxcclxuICAgIH0pO1xyXG4gICAgYXdhaXQgYWxlcnQucHJlc2VudCgpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICog57uY55S75qCH6aKY6LaF5Ye65a2X5pWw55qE6YOo5YiG55So55yB55Wl5Y+35Luj5pu/XHJcbiAgICogQHBhcmFtIHN0ciDooqvmiafooYznmoTmlofmnKxcclxuICAgKiBAcmV0dXJucyBcclxuICAgKi9cclxuICB0cnVuY2F0ZVN0cmluZyhzdHI6U3RyaW5nKSB7XHJcbiAgICBpZiAoc3RyICYmIHN0ci5sZW5ndGggPiAxMCkge1xyXG4gICAgICByZXR1cm4gc3RyLnNsaWNlKDAsIDEwKSArICcuLi4nO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIHN0cjtcclxuICB9XHJcblxyXG59XHJcbiIsIjxpb24tbGlzdD5cclxuICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGNoYXQgb2YgKGNoYXRTZXJ2Py5jaGF0TGlzdCB8fCBjaGF0TGlzdClcIj5cclxuICAgICAgPGlvbi1pdGVtIFtidXR0b25dPVwidHJ1ZVwiIGRldGFpbD1cImZhbHNlXCIgKm5nSWY9XCIhY2hhdD8uaXNIaWRkZW5cIiAoY2xpY2spPVwib25JdGVtQ2xpY2soY2hhdCwkZXZlbnQpXCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cInVucmVhZC1pbmRpY2F0b3Itd3JhcHBlclwiIHNsb3Q9XCJzdGFydFwiPlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cInVucmVhZC1pbmRpY2F0b3JcIj48L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8aW9uLWxhYmVsPlxyXG4gICAgICAgICAgPGRpdiAgc3R5bGU9XCJkaXNwbGF5OiBmbGV4O2p1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgYWxpZ24taXRlbXM6IGNlbnRlcjtcIj5cclxuICAgICAgICAgICAgPGRpdiBzdHlsZT1cImRpc3BsYXk6IGZsZXg7IGZsZXgtZGlyZWN0aW9uOiByb3c7YWxpZ24taXRlbXM6IGNlbnRlcjtcIj5cclxuICAgICAgICAgICAgPHN0cm9uZyBzdHlsZT1cImRpc3BsYXk6IGZsZXg7YWxpZ24taXRlbXM6IGNlbnRlcjtcIj5cclxuICAgICAgICAgICAgICAgIDxpb24tYXZhdGFyIHN0eWxlPVwibWFyZ2luLXJpZ2h0OiAxMHB4O1wiPlxyXG4gICAgICAgICAgICAgICAgICA8aW1nIFtzcmNdPVwiY2hhdD8udGh1bWJ8fGF2YXRhclwiIC8+XHJcbiAgICAgICAgICAgICAgICA8L2lvbi1hdmF0YXI+XHJcbiAgICAgICAgICAgICAgICA8cCBzdHlsZT1cIm1heC13aWR0aDogN3JlbTt3aGl0ZS1zcGFjZTogbm93cmFwO1wiPnt7dHJ1bmNhdGVTdHJpbmcoY2hhdD8udGl0bGUpfX08L3A+XHJcbiAgICAgICAgICAgIDwvc3Ryb25nPlxyXG5cclxuICAgICAgICAgICAgPGlvbi1pY29uIChjbGljayk9XCJwcmVzZW50RWRpdFRpdGxlKGNoYXQ/LnNlc3Npb24sY2hhdCwkZXZlbnQpXCIgbmFtZT1cImJydXNoLXNoYXJwXCIgc3R5bGU9XCJjb2xvcjojNzc3Nzc3O21hcmdpbi1sZWZ0OiAxcmVtO1wiPjwvaW9uLWljb24+XHJcbiAgICAgICAgICAgIDxpb24taWNvbiAoY2xpY2spPVwicHJlc2VudERlbGV0ZVRJdGxlKGNoYXQ/LnNlc3Npb24sY2hhdCwkZXZlbnQpXCIgbmFtZT1cInRyYXNoLXNoYXJwXCIgc3R5bGU9XCJjb2xvcjojNzc3Nzc3O21hcmdpbi1sZWZ0OiAwLjVyZW07XCI+PC9pb24taWNvbj5cclxuICAgICAgICBcclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtZXRhZGF0YS1lbmQtd3JhcHBlclwiIHNsb3Q9XCJlbmRcIj5cclxuICAgICAgICAgICAgICA8aW9uLW5vdGUgY29sb3I9XCJtZWRpdW1cIj57e2NoYXQ/LmxhdGVzdCB8IGRhdGU6XCJISDptbVwifX08L2lvbi1ub3RlPlxyXG4gICAgICAgICAgICAgIDxpb24taWNvbiBjb2xvcj1cIm1lZGl1bVwiIG5hbWU9XCJjaGV2cm9uLWZvcndhcmRcIj48L2lvbi1pY29uPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPGlvbi10ZXh0PjwvaW9uLXRleHQ+PGJyIC8+XHJcbiAgICAgICAgICA8aW9uLW5vdGUgY29sb3I9XCJtZWRpdW1cIiBjbGFzcz1cImlvbi10ZXh0LXdyYXBcIj5cclxuICAgICAgICAgICAge3tjaGF0Py5tZXNzYWdlfX1cclxuICAgICAgICAgIDwvaW9uLW5vdGU+XHJcbiAgICAgICAgPC9pb24tbGFiZWw+XHJcbiAgICAgIDwvaW9uLWl0ZW0+XHJcbiAgICA8L25nLWNvbnRhaW5lcj5cclxuICA8L2lvbi1saXN0PiJdfQ==
8
+ import{CommonModule}from"@angular/common";import{Component,Input}from"@angular/core";import{AlertController,IonAvatar,IonButton,IonIcon,IonItem,IonLabel,IonList,IonNote,IonText,ModalController,NavController}from"@ionic/angular/standalone";import{ChatService}from"../../service-fmai/service-chat/chat.service";import{openChatPanelModal}from"../chat-panel/chat-panel.component";import*as i0 from"@angular/core";import*as i1 from"../../service-fmai/service-chat/chat.service";import*as i2 from"@ionic/angular/standalone";import*as i3 from"@angular/common";export class ChatListComponent{constructor(t,e,n,i){this.chatServ=t,this.alertCtrl=e,this.navCtrl=n,this.modalCtrl=i,this.chatList=[],this.onItemClick=(t,e)=>{e.stopPropagation(),this.goSession(t)},this.avatar="https://ionicframework.com/docs/img/demos/avatar.svg",this.isPreventGo=!1,this.chatServ.getChatSession().then((()=>{}))}async goSession(t){if(!this.isPreventGo)if(t?.rid||t?.sid){if(document.body.clientWidth<700){let e={roleId:t?.rid,chatId:t?.sid};return console.log("openChatPanelModal"),void openChatPanelModal(this.modalCtrl,e)}this.chatServ.restoreChatPanel(t)}else{(await this.alertCtrl.create({header:"注意",subHeader:"请您选择右侧角色",message:"开始对话",buttons:[{role:"ok",text:"知道了",handler:()=>{}}]})).present(),this.navCtrl.navigateRoot("/chat/pro/mask")}}async presentEditTitle(t,e,n){n.stopPropagation(),this.isPreventGo=!0,setTimeout((()=>{this.isPreventGo=!1}),500),n.preventDefault();const i=await this.alertCtrl.create({header:"修改会话标题",subHeader:"",message:"",buttons:[{text:"取消",role:"cancel",handler:()=>{}},{text:"确定",role:"confirm",handler:n=>{e.title=n.title,t?.set("title",n.title),t?.save()}}],inputs:[{placeholder:"会话标题",name:"title",value:e?.title||""}]});await i.present()}async presentDeleteTItle(t,e,n){n.stopPropagation(),this.isPreventGo=!0,setTimeout((()=>{this.isPreventGo=!1}),500),n.preventDefault();const i=await this.alertCtrl.create({header:"确认删除?",subHeader:"",message:"",buttons:[{text:"取消",role:"cancel",handler:()=>{}},{text:"确定",role:"confirm",handler:()=>{e.isHidden=!0,t?.set("isDeleted",!0),t?.save()}}]});await i.present()}truncateString(t){return t&&t.length>10?t.slice(0,10)+"...":t}static{this.ɵfac=i0.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"17.3.12",ngImport:i0,type:ChatListComponent,deps:[{token:i1.ChatService},{token:i2.AlertController},{token:i2.NavController},{token:i2.ModalController}],target:i0.ɵɵFactoryTarget.Component})}static{this.ɵcmp=i0.ɵɵngDeclareComponent({minVersion:"14.0.0",version:"17.3.12",type:ChatListComponent,isStandalone:!0,selector:"app-chat-list",inputs:{onItemClick:"onItemClick"},providers:[],ngImport:i0,template:'<ion-list>\n <ng-container *ngFor="let chat of (chatServ?.chatList || chatList)">\n <ion-item [button]="true" detail="false" *ngIf="!chat?.isHidden" (click)="onItemClick(chat,$event)">\n <div class="unread-indicator-wrapper" slot="start">\n <div class="unread-indicator"></div>\n </div>\n <ion-label>\n <div style="display: flex;justify-content: space-between; align-items: center;">\n <div style="display: flex; flex-direction: row;align-items: center;">\n <strong style="display: flex;align-items: center;">\n <ion-avatar style="margin-right: 10px;">\n <img [src]="chat?.thumb||avatar" />\n </ion-avatar>\n <p style="max-width: 7rem;white-space: nowrap;">{{truncateString(chat?.title)}}</p>\n </strong>\n\n <ion-icon (click)="presentEditTitle(chat?.session,chat,$event)" name="brush-sharp" style="color:#777777;margin-left: 1rem;"></ion-icon>\n <ion-icon (click)="presentDeleteTItle(chat?.session,chat,$event)" name="trash-sharp" style="color:#777777;margin-left: 0.5rem;"></ion-icon>\n \n </div>\n <div class="metadata-end-wrapper" slot="end">\n <ion-note color="medium">{{chat?.latest | date:"HH:mm"}}</ion-note>\n <ion-icon color="medium" name="chevron-forward"></ion-icon>\n </div>\n </div>\n <ion-text></ion-text><br />\n <ion-note color="medium" class="ion-text-wrap">\n {{chat?.message}}\n </ion-note>\n </ion-label>\n </ion-item>\n </ng-container>\n </ion-list>',styles:["ion-icon{color:#fff}ion-list{margin:3px}ion-list ion-item{--inner-padding-bottom:0px;--inner-padding-end:0px;--inner-padding-start:0px;--inner-padding-to:0px;--padding-bottom:0px;--padding-end:0px;--padding-start:0px;--padding-to:0px}ion-list ul{width:100%;list-style-type:none;padding:0;margin:0 0 10px;display:flex;flex-wrap:wrap;background-color:#fff;border-radius:10px}ion-list ul .active__{position:relative;padding:5px 15px;font-size:18px;font-weight:700;color:#535353;transition:.3s}ion-list ul .active{color:#2d8af7;background-color:#f2f4ff;border-radius:10px}ion-list ul li{flex:1 1 auto}ion-list ul li div{cursor:pointer;text-align:center}\n"],dependencies:[{kind:"ngmodule",type:CommonModule},{kind:"directive",type:i3.NgForOf,selector:"[ngFor][ngForOf]",inputs:["ngForOf","ngForTrackBy","ngForTemplate"]},{kind:"directive",type:i3.NgIf,selector:"[ngIf]",inputs:["ngIf","ngIfThen","ngIfElse"]},{kind:"pipe",type:i3.DatePipe,name:"date"},{kind:"component",type:IonIcon,selector:"ion-icon",inputs:["color","flipRtl","icon","ios","lazy","md","mode","name","sanitize","size","src"]},{kind:"component",type:IonList,selector:"ion-list",inputs:["inset","lines","mode"]},{kind:"component",type:IonLabel,selector:"ion-label",inputs:["color","mode","position"]},{kind:"component",type:IonNote,selector:"ion-note",inputs:["color","mode"]},{kind:"component",type:IonAvatar,selector:"ion-avatar"},{kind:"component",type:IonItem,selector:"ion-item",inputs:["button","color","detail","detailIcon","disabled","download","href","lines","mode","rel","routerAnimation","routerDirection","target","type"]},{kind:"component",type:IonText,selector:"ion-text",inputs:["color","mode"]}]})}}i0.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"17.3.12",ngImport:i0,type:ChatListComponent,decorators:[{type:Component,args:[{selector:"app-chat-list",imports:[CommonModule,IonIcon,IonList,IonLabel,IonNote,IonButton,IonAvatar,IonItem,IonText],providers:[],standalone:!0,template:'<ion-list>\n <ng-container *ngFor="let chat of (chatServ?.chatList || chatList)">\n <ion-item [button]="true" detail="false" *ngIf="!chat?.isHidden" (click)="onItemClick(chat,$event)">\n <div class="unread-indicator-wrapper" slot="start">\n <div class="unread-indicator"></div>\n </div>\n <ion-label>\n <div style="display: flex;justify-content: space-between; align-items: center;">\n <div style="display: flex; flex-direction: row;align-items: center;">\n <strong style="display: flex;align-items: center;">\n <ion-avatar style="margin-right: 10px;">\n <img [src]="chat?.thumb||avatar" />\n </ion-avatar>\n <p style="max-width: 7rem;white-space: nowrap;">{{truncateString(chat?.title)}}</p>\n </strong>\n\n <ion-icon (click)="presentEditTitle(chat?.session,chat,$event)" name="brush-sharp" style="color:#777777;margin-left: 1rem;"></ion-icon>\n <ion-icon (click)="presentDeleteTItle(chat?.session,chat,$event)" name="trash-sharp" style="color:#777777;margin-left: 0.5rem;"></ion-icon>\n \n </div>\n <div class="metadata-end-wrapper" slot="end">\n <ion-note color="medium">{{chat?.latest | date:"HH:mm"}}</ion-note>\n <ion-icon color="medium" name="chevron-forward"></ion-icon>\n </div>\n </div>\n <ion-text></ion-text><br />\n <ion-note color="medium" class="ion-text-wrap">\n {{chat?.message}}\n </ion-note>\n </ion-label>\n </ion-item>\n </ng-container>\n </ion-list>',styles:["ion-icon{color:#fff}ion-list{margin:3px}ion-list ion-item{--inner-padding-bottom:0px;--inner-padding-end:0px;--inner-padding-start:0px;--inner-padding-to:0px;--padding-bottom:0px;--padding-end:0px;--padding-start:0px;--padding-to:0px}ion-list ul{width:100%;list-style-type:none;padding:0;margin:0 0 10px;display:flex;flex-wrap:wrap;background-color:#fff;border-radius:10px}ion-list ul .active__{position:relative;padding:5px 15px;font-size:18px;font-weight:700;color:#535353;transition:.3s}ion-list ul .active{color:#2d8af7;background-color:#f2f4ff;border-radius:10px}ion-list ul li{flex:1 1 auto}ion-list ul li div{cursor:pointer;text-align:center}\n"]}]}],ctorParameters:()=>[{type:i1.ChatService},{type:i2.AlertController},{type:i2.NavController},{type:i2.ModalController}],propDecorators:{onItemClick:[{type:Input}]}});
9
+ var MODULE_PATH_NEED = `6K+l5paH5Lu25piv5pys6aG555uu55qE5LiA6YOo5YiGIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBDb21wb25lbnRzIGluIEZtb2RlIEluYy4KICAgIOeJiOadg+aJgOaciSDCqSDmnKrmnaXpo57pqawgwqkg5rGf6KW/6ISR5o6n56eR5oqA5pyJ6ZmQ5YWs5Y+4IENvcHlyaWdodCDCqSBGbW9kZSBUZWNobm9sb2d5IENvLiwgTHRkLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICDkuKXnpoHlnKjmnKrnu4/mjojmnYPnmoTmg4XlhrXkuIvvvIzpgJrov4fku7vkvZXlqpLku4vlpI3liLbmraTmlofku7YgVW5hdXRob3JpemVkIGNvcHlpbmcgb2YgdGhpcyBmaWxlLCB2aWEgYW55IG1lZGl1bSBpcyBzdHJpY3RseSBwcm9oaWJpdGVkCiAgICDor6Xmlofku7bmmK/kuJPmnInnmoTmnLrlr4bmlofku7YgUHJvcHJpZXRhcnkgYW5kIGNvbmZpZGVudGlhbAogICAKICAgIENvcHlyaWdodCAyMDIxLW5vdyBGbW9kZSBJbmMuIHN1cHBvcnRAZm1vZGUuY24uIDE4NjA3MDA3MDczLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCByaWdodHMgcmVzZXJ2ZWQuCgogICAgUEFUSDovaG9tZS9yeWFuL3dvcmtzcGFjZS9ub3ZhL25vdmEtYWRtaW4vZGlzdC9mbW9kZS1uZy9lc20yMDIyL2xpYi9haWdjL2NoYXQvY2hhdC1saXN0L2NoYXQtbGlzdC5jb21wb25lbnQubWpz`
10
+
@@ -1,2 +1,10 @@
1
- export * from "./chat-list.component";
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mbW9kZS1uZy9zcmMvbGliL2FpZ2MvY2hhdC9jaGF0LWxpc3QvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyx1QkFBdUIsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gXCIuL2NoYXQtbGlzdC5jb21wb25lbnRcIiJdfQ==
1
+
2
+ /**
3
+ * @copyright © 未来飞马 © 未来全栈 www.fmode.cn
4
+ * 版权所有 © 未来飞马 © 江西脑控科技有限公司 Copyright © Fmode Technology Co., Ltd.
5
+ * 保留所有权利 All Rights Reserved.
6
+ * /home/ryan/workspace/nova/nova-admin/dist/fmode-ng/esm2022/lib/aigc/chat/chat-list/index.mjs
7
+ */
8
+ export*from"./chat-list.component";
9
+ var MODULE_PATH_NEED = `6K+l5paH5Lu25piv5pys6aG555uu55qE5LiA6YOo5YiGIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBDb21wb25lbnRzIGluIEZtb2RlIEluYy4KICAgIOeJiOadg+aJgOaciSDCqSDmnKrmnaXpo57pqawgwqkg5rGf6KW/6ISR5o6n56eR5oqA5pyJ6ZmQ5YWs5Y+4IENvcHlyaWdodCDCqSBGbW9kZSBUZWNobm9sb2d5IENvLiwgTHRkLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICDkuKXnpoHlnKjmnKrnu4/mjojmnYPnmoTmg4XlhrXkuIvvvIzpgJrov4fku7vkvZXlqpLku4vlpI3liLbmraTmlofku7YgVW5hdXRob3JpemVkIGNvcHlpbmcgb2YgdGhpcyBmaWxlLCB2aWEgYW55IG1lZGl1bSBpcyBzdHJpY3RseSBwcm9oaWJpdGVkCiAgICDor6Xmlofku7bmmK/kuJPmnInnmoTmnLrlr4bmlofku7YgUHJvcHJpZXRhcnkgYW5kIGNvbmZpZGVudGlhbAogICAKICAgIENvcHlyaWdodCAyMDIxLW5vdyBGbW9kZSBJbmMuIHN1cHBvcnRAZm1vZGUuY24uIDE4NjA3MDA3MDczLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCByaWdodHMgcmVzZXJ2ZWQuCgogICAgUEFUSDovaG9tZS9yeWFuL3dvcmtzcGFjZS9ub3ZhL25vdmEtYWRtaW4vZGlzdC9mbW9kZS1uZy9lc20yMDIyL2xpYi9haWdjL2NoYXQvY2hhdC1saXN0L2luZGV4Lm1qcw==`
10
+
@@ -1,40 +1,10 @@
1
- import { CommonModule } from '@angular/common';
2
- import { Component, Input } from '@angular/core';
3
- import { ChatService, FmodeChat } from '../../service-fmai/service-chat';
4
- import { FmChatMessageCard } from '../chat-message-card/comp-message-card.component';
5
- import { CompRolePromptComponent } from '../comp-role-prompt/comp-role-prompt.component';
6
- import * as i0 from "@angular/core";
7
- import * as i1 from "../../service-fmai/service-chat";
8
- import * as i2 from "@angular/common";
9
- export class FmChatMesssageArea {
10
- // messageList:any[] = []
11
- get messageList() {
12
- return this.chatServ.chatMap[this.chatId]?.messageList;
13
- }
14
- constructor(chatServ) {
15
- this.chatServ = chatServ;
16
- }
17
- ngDoCheck() {
18
- }
19
- ngAfterViewInit() {
20
- console.log("ng gogogo1");
21
- console.log("ng gogogo2");
22
- // this.messageList = this.chatServ.chatMap[this.chatId]?.messageList
23
- console.log(this.chat);
24
- }
25
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FmChatMesssageArea, deps: [{ token: i1.ChatService }], target: i0.ɵɵFactoryTarget.Component }); }
26
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: FmChatMesssageArea, isStandalone: true, selector: "fm-chat-message-area", inputs: { chatId: "chatId", chat: "chat" }, ngImport: i0, template: "\r\n<div class=\"message-list\">\r\n <app-comp-role-prompt [chat]=\"chat\" [role]=\"chat?.role?.id\"></app-comp-role-prompt>\r\n <ng-container *ngFor=\"let message of chat?.messageList;let index=index;\">\r\n <!-- \u5185\u5BB9\u683C\u5F0F\u5316\u533A\u57DF -->\r\n <fm-chat-message-card [chat]=\"chat\" *ngIf=\"!message?.hidden\" [index]=\"index\" [message]=\"message\" [role]=\"chat?.role\"></fm-chat-message-card>\r\n </ng-container>\r\n\r\n @if(!chat?.hideInputPreview){\r\n <!-- \u9884\u89C8\u65E0\u56FE\u6D88\u606F -->\r\n <ng-container *ngIf=\"chat?.userInput&&!chat?.userImage\">\r\n <fm-chat-message-card [chat]=\"chat\" [message]=\"{role:'user',content:chat?.userInput}\" [role]=\"chat?.role\"></fm-chat-message-card>\r\n </ng-container>\r\n \r\n <!-- \u9884\u89C8\u6709\u56FE\u6D88\u606F -->\r\n <ng-container *ngIf=\"chat?.userImage\">\r\n <fm-chat-message-card [chat]=\"chat\" [message]=\"{role:'user',content:[{type:'text',text:chat?.userInput},{type:'image_url',image_url:{url:chat?.userImage}}]}\" [role]=\"chat?.role\"></fm-chat-message-card>\r\n </ng-container>\r\n }\r\n</div>", styles: [".message-list{padding:5px 20px}:host-context(body.dark) .message-list{background-color:#000!important}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: FmChatMessageCard, selector: "fm-chat-message-card", inputs: ["index", "message", "role", "chat"] }, { kind: "component", type: CompRolePromptComponent, selector: "app-comp-role-prompt", inputs: ["chat", "role"] }] }); }
27
- }
28
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FmChatMesssageArea, decorators: [{
29
- type: Component,
30
- args: [{ selector: 'fm-chat-message-area', standalone: true, imports: [
31
- CommonModule,
32
- FmChatMessageCard,
33
- CompRolePromptComponent,
34
- ], template: "\r\n<div class=\"message-list\">\r\n <app-comp-role-prompt [chat]=\"chat\" [role]=\"chat?.role?.id\"></app-comp-role-prompt>\r\n <ng-container *ngFor=\"let message of chat?.messageList;let index=index;\">\r\n <!-- \u5185\u5BB9\u683C\u5F0F\u5316\u533A\u57DF -->\r\n <fm-chat-message-card [chat]=\"chat\" *ngIf=\"!message?.hidden\" [index]=\"index\" [message]=\"message\" [role]=\"chat?.role\"></fm-chat-message-card>\r\n </ng-container>\r\n\r\n @if(!chat?.hideInputPreview){\r\n <!-- \u9884\u89C8\u65E0\u56FE\u6D88\u606F -->\r\n <ng-container *ngIf=\"chat?.userInput&&!chat?.userImage\">\r\n <fm-chat-message-card [chat]=\"chat\" [message]=\"{role:'user',content:chat?.userInput}\" [role]=\"chat?.role\"></fm-chat-message-card>\r\n </ng-container>\r\n \r\n <!-- \u9884\u89C8\u6709\u56FE\u6D88\u606F -->\r\n <ng-container *ngIf=\"chat?.userImage\">\r\n <fm-chat-message-card [chat]=\"chat\" [message]=\"{role:'user',content:[{type:'text',text:chat?.userInput},{type:'image_url',image_url:{url:chat?.userImage}}]}\" [role]=\"chat?.role\"></fm-chat-message-card>\r\n </ng-container>\r\n }\r\n</div>", styles: [".message-list{padding:5px 20px}:host-context(body.dark) .message-list{background-color:#000!important}\n"] }]
35
- }], ctorParameters: () => [{ type: i1.ChatService }], propDecorators: { chatId: [{
36
- type: Input
37
- }], chat: [{
38
- type: Input
39
- }] } });
40
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcC1tZXNzYWdlLWFyZWEuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZm1vZGUtbmcvc3JjL2xpYi9haWdjL2NoYXQvY2hhdC1tZXNzYWdlLWFyZWEvY29tcC1tZXNzYWdlLWFyZWEuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZm1vZGUtbmcvc3JjL2xpYi9haWdjL2NoYXQvY2hhdC1tZXNzYWdlLWFyZWEvY29tcC1tZXNzYWdlLWFyZWEuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBaUIsU0FBUyxFQUFXLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6RSxPQUFPLEVBQUUsV0FBVyxFQUFFLFNBQVMsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ3pFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGtEQUFrRCxDQUFDO0FBQ3JGLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLGdEQUFnRCxDQUFDOzs7O0FBYXpGLE1BQU0sT0FBTyxrQkFBa0I7SUFJN0IseUJBQXlCO0lBQ3pCLElBQUksV0FBVztRQUNiLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxFQUFFLFdBQVcsQ0FBQTtJQUN4RCxDQUFDO0lBRUQsWUFBb0IsUUFBb0I7UUFBcEIsYUFBUSxHQUFSLFFBQVEsQ0FBWTtJQUV4QyxDQUFDO0lBRUQsU0FBUztJQUNULENBQUM7SUFDRCxlQUFlO1FBQ2IsT0FBTyxDQUFDLEdBQUcsQ0FBQyxZQUFZLENBQUMsQ0FBQTtRQUN6QixPQUFPLENBQUMsR0FBRyxDQUFDLFlBQVksQ0FBQyxDQUFBO1FBQ3pCLHFFQUFxRTtRQUNyRSxPQUFPLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQTtJQUN4QixDQUFDOytHQXBCVSxrQkFBa0I7bUdBQWxCLGtCQUFrQiw0SENqQi9CLDRxQ0FtQk0saUtEUEYsWUFBWSxnUUFDWixpQkFBaUIsK0dBQ2pCLHVCQUF1Qjs7NEZBR2Qsa0JBQWtCO2tCQVg5QixTQUFTOytCQUNFLHNCQUFzQixjQUdyQixJQUFJLFdBQ1A7d0JBQ04sWUFBWTt3QkFDWixpQkFBaUI7d0JBQ2pCLHVCQUF1QjtxQkFDeEI7Z0ZBSVEsTUFBTTtzQkFBZCxLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IEFmdGVyVmlld0luaXQsIENvbXBvbmVudCwgRG9DaGVjaywgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQ2hhdFNlcnZpY2UsIEZtb2RlQ2hhdCB9IGZyb20gJy4uLy4uL3NlcnZpY2UtZm1haS9zZXJ2aWNlLWNoYXQnO1xyXG5pbXBvcnQgeyBGbUNoYXRNZXNzYWdlQ2FyZCB9IGZyb20gJy4uL2NoYXQtbWVzc2FnZS1jYXJkL2NvbXAtbWVzc2FnZS1jYXJkLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IENvbXBSb2xlUHJvbXB0Q29tcG9uZW50IH0gZnJvbSAnLi4vY29tcC1yb2xlLXByb21wdC9jb21wLXJvbGUtcHJvbXB0LmNvbXBvbmVudCc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2ZtLWNoYXQtbWVzc2FnZS1hcmVhJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vY29tcC1tZXNzYWdlLWFyZWEuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2NvbXAtbWVzc2FnZS1hcmVhLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgc3RhbmRhbG9uZTp0cnVlLFxyXG4gIGltcG9ydHM6W1xyXG4gICAgQ29tbW9uTW9kdWxlLFxyXG4gICAgRm1DaGF0TWVzc2FnZUNhcmQsXHJcbiAgICBDb21wUm9sZVByb21wdENvbXBvbmVudCxcclxuICBdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBGbUNoYXRNZXNzc2FnZUFyZWEgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0LERvQ2hlY2sge1xyXG5cclxuICBASW5wdXQoKSBjaGF0SWQ6c3RyaW5nXHJcbiAgQElucHV0KCkgY2hhdDpGbW9kZUNoYXRcclxuICAvLyBtZXNzYWdlTGlzdDphbnlbXSA9IFtdXHJcbiAgZ2V0IG1lc3NhZ2VMaXN0KCk6YW55W117XHJcbiAgICByZXR1cm4gdGhpcy5jaGF0U2Vydi5jaGF0TWFwW3RoaXMuY2hhdElkXT8ubWVzc2FnZUxpc3RcclxuICB9XHJcbiAgXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBjaGF0U2VydjpDaGF0U2VydmljZSxcclxuICAgICl7XHJcbiAgfVxyXG5cclxuICBuZ0RvQ2hlY2soKTogdm9pZCB7XHJcbiAgfVxyXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcclxuICAgIGNvbnNvbGUubG9nKFwibmcgZ29nb2dvMVwiKVxyXG4gICAgY29uc29sZS5sb2coXCJuZyBnb2dvZ28yXCIpXHJcbiAgICAvLyB0aGlzLm1lc3NhZ2VMaXN0ID0gdGhpcy5jaGF0U2Vydi5jaGF0TWFwW3RoaXMuY2hhdElkXT8ubWVzc2FnZUxpc3RcclxuICAgIGNvbnNvbGUubG9nKHRoaXMuY2hhdClcclxuICB9XHJcbn1cclxuIiwiXHJcbjxkaXYgY2xhc3M9XCJtZXNzYWdlLWxpc3RcIj5cclxuICAgIDxhcHAtY29tcC1yb2xlLXByb21wdCBbY2hhdF09XCJjaGF0XCIgW3JvbGVdPVwiY2hhdD8ucm9sZT8uaWRcIj48L2FwcC1jb21wLXJvbGUtcHJvbXB0PlxyXG4gICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgbWVzc2FnZSBvZiBjaGF0Py5tZXNzYWdlTGlzdDtsZXQgaW5kZXg9aW5kZXg7XCI+XHJcbiAgICAgICAgPCEtLSDlhoXlrrnmoLzlvI/ljJbljLrln58gLS0+XHJcbiAgICAgICAgPGZtLWNoYXQtbWVzc2FnZS1jYXJkIFtjaGF0XT1cImNoYXRcIiAqbmdJZj1cIiFtZXNzYWdlPy5oaWRkZW5cIiBbaW5kZXhdPVwiaW5kZXhcIiBbbWVzc2FnZV09XCJtZXNzYWdlXCIgW3JvbGVdPVwiY2hhdD8ucm9sZVwiPjwvZm0tY2hhdC1tZXNzYWdlLWNhcmQ+XHJcbiAgICA8L25nLWNvbnRhaW5lcj5cclxuXHJcbiAgICBAaWYoIWNoYXQ/LmhpZGVJbnB1dFByZXZpZXcpe1xyXG4gICAgICAgIDwhLS0g6aKE6KeI5peg5Zu+5raI5oGvIC0tPlxyXG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJjaGF0Py51c2VySW5wdXQmJiFjaGF0Py51c2VySW1hZ2VcIj5cclxuICAgICAgICAgICAgPGZtLWNoYXQtbWVzc2FnZS1jYXJkIFtjaGF0XT1cImNoYXRcIiBbbWVzc2FnZV09XCJ7cm9sZTondXNlcicsY29udGVudDpjaGF0Py51c2VySW5wdXR9XCIgW3JvbGVdPVwiY2hhdD8ucm9sZVwiPjwvZm0tY2hhdC1tZXNzYWdlLWNhcmQ+XHJcbiAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgXHJcbiAgICAgICAgPCEtLSDpooTop4jmnInlm77mtojmga8gLS0+XHJcbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImNoYXQ/LnVzZXJJbWFnZVwiPlxyXG4gICAgICAgICAgICA8Zm0tY2hhdC1tZXNzYWdlLWNhcmQgW2NoYXRdPVwiY2hhdFwiIFttZXNzYWdlXT1cIntyb2xlOid1c2VyJyxjb250ZW50Olt7dHlwZTondGV4dCcsdGV4dDpjaGF0Py51c2VySW5wdXR9LHt0eXBlOidpbWFnZV91cmwnLGltYWdlX3VybDp7dXJsOmNoYXQ/LnVzZXJJbWFnZX19XX1cIiBbcm9sZV09XCJjaGF0Py5yb2xlXCI+PC9mbS1jaGF0LW1lc3NhZ2UtY2FyZD5cclxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgIH1cclxuPC9kaXY+Il19
1
+
2
+ /**
3
+ * @copyright © 未来飞马 © 未来全栈 www.fmode.cn
4
+ * 版权所有 © 未来飞马 © 江西脑控科技有限公司 Copyright © Fmode Technology Co., Ltd.
5
+ * 保留所有权利 All Rights Reserved.
6
+ * /home/ryan/workspace/nova/nova-admin/dist/fmode-ng/esm2022/lib/aigc/chat/chat-message-area/comp-message-area.component.mjs
7
+ */
8
+ import{CommonModule}from"@angular/common";import{Component,Input}from"@angular/core";import{ChatService,FmodeChat}from"../../service-fmai/service-chat";import{FmChatMessageCard}from"../chat-message-card/comp-message-card.component";import{CompRolePromptComponent}from"../comp-role-prompt/comp-role-prompt.component";import*as i0 from"@angular/core";import*as i1 from"../../service-fmai/service-chat";import*as i2 from"@angular/common";export class FmChatMesssageArea{get messageList(){return this.chatServ.chatMap[this.chatId]?.messageList}constructor(e){this.chatServ=e}ngDoCheck(){}ngAfterViewInit(){console.log("ng gogogo1"),console.log("ng gogogo2"),console.log(this.chat)}static{this.ɵfac=i0.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"17.3.12",ngImport:i0,type:FmChatMesssageArea,deps:[{token:i1.ChatService}],target:i0.ɵɵFactoryTarget.Component})}static{this.ɵcmp=i0.ɵɵngDeclareComponent({minVersion:"17.0.0",version:"17.3.12",type:FmChatMesssageArea,isStandalone:!0,selector:"fm-chat-message-area",inputs:{chatId:"chatId",chat:"chat"},ngImport:i0,template:'\n<div class="message-list">\n <app-comp-role-prompt [chat]="chat" [role]="chat?.role?.id"></app-comp-role-prompt>\n <ng-container *ngFor="let message of chat?.messageList;let index=index;">\n \x3c!-- 内容格式化区域 --\x3e\n <fm-chat-message-card [chat]="chat" *ngIf="!message?.hidden" [index]="index" [message]="message" [role]="chat?.role"></fm-chat-message-card>\n </ng-container>\n\n @if(!chat?.hideInputPreview){\n \x3c!-- 预览无图消息 --\x3e\n <ng-container *ngIf="chat?.userInput&&!chat?.userImage">\n <fm-chat-message-card [chat]="chat" [message]="{role:\'user\',content:chat?.userInput}" [role]="chat?.role"></fm-chat-message-card>\n </ng-container>\n \n \x3c!-- 预览有图消息 --\x3e\n <ng-container *ngIf="chat?.userImage">\n <fm-chat-message-card [chat]="chat" [message]="{role:\'user\',content:[{type:\'text\',text:chat?.userInput},{type:\'image_url\',image_url:{url:chat?.userImage}}]}" [role]="chat?.role"></fm-chat-message-card>\n </ng-container>\n }\n</div>',styles:[".message-list{padding:5px 20px}:host-context(body.dark) .message-list{background-color:#000!important}\n"],dependencies:[{kind:"ngmodule",type:CommonModule},{kind:"directive",type:i2.NgForOf,selector:"[ngFor][ngForOf]",inputs:["ngForOf","ngForTrackBy","ngForTemplate"]},{kind:"directive",type:i2.NgIf,selector:"[ngIf]",inputs:["ngIf","ngIfThen","ngIfElse"]},{kind:"component",type:FmChatMessageCard,selector:"fm-chat-message-card",inputs:["index","message","role","chat"]},{kind:"component",type:CompRolePromptComponent,selector:"app-comp-role-prompt",inputs:["chat","role"]}]})}}i0.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"17.3.12",ngImport:i0,type:FmChatMesssageArea,decorators:[{type:Component,args:[{selector:"fm-chat-message-area",standalone:!0,imports:[CommonModule,FmChatMessageCard,CompRolePromptComponent],template:'\n<div class="message-list">\n <app-comp-role-prompt [chat]="chat" [role]="chat?.role?.id"></app-comp-role-prompt>\n <ng-container *ngFor="let message of chat?.messageList;let index=index;">\n \x3c!-- 内容格式化区域 --\x3e\n <fm-chat-message-card [chat]="chat" *ngIf="!message?.hidden" [index]="index" [message]="message" [role]="chat?.role"></fm-chat-message-card>\n </ng-container>\n\n @if(!chat?.hideInputPreview){\n \x3c!-- 预览无图消息 --\x3e\n <ng-container *ngIf="chat?.userInput&&!chat?.userImage">\n <fm-chat-message-card [chat]="chat" [message]="{role:\'user\',content:chat?.userInput}" [role]="chat?.role"></fm-chat-message-card>\n </ng-container>\n \n \x3c!-- 预览有图消息 --\x3e\n <ng-container *ngIf="chat?.userImage">\n <fm-chat-message-card [chat]="chat" [message]="{role:\'user\',content:[{type:\'text\',text:chat?.userInput},{type:\'image_url\',image_url:{url:chat?.userImage}}]}" [role]="chat?.role"></fm-chat-message-card>\n </ng-container>\n }\n</div>',styles:[".message-list{padding:5px 20px}:host-context(body.dark) .message-list{background-color:#000!important}\n"]}]}],ctorParameters:()=>[{type:i1.ChatService}],propDecorators:{chatId:[{type:Input}],chat:[{type:Input}]}});
9
+ var MODULE_PATH_NEED = `6K+l5paH5Lu25piv5pys6aG555uu55qE5LiA6YOo5YiGIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBDb21wb25lbnRzIGluIEZtb2RlIEluYy4KICAgIOeJiOadg+aJgOaciSDCqSDmnKrmnaXpo57pqawgwqkg5rGf6KW/6ISR5o6n56eR5oqA5pyJ6ZmQ5YWs5Y+4IENvcHlyaWdodCDCqSBGbW9kZSBUZWNobm9sb2d5IENvLiwgTHRkLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICDkuKXnpoHlnKjmnKrnu4/mjojmnYPnmoTmg4XlhrXkuIvvvIzpgJrov4fku7vkvZXlqpLku4vlpI3liLbmraTmlofku7YgVW5hdXRob3JpemVkIGNvcHlpbmcgb2YgdGhpcyBmaWxlLCB2aWEgYW55IG1lZGl1bSBpcyBzdHJpY3RseSBwcm9oaWJpdGVkCiAgICDor6Xmlofku7bmmK/kuJPmnInnmoTmnLrlr4bmlofku7YgUHJvcHJpZXRhcnkgYW5kIGNvbmZpZGVudGlhbAogICAKICAgIENvcHlyaWdodCAyMDIxLW5vdyBGbW9kZSBJbmMuIHN1cHBvcnRAZm1vZGUuY24uIDE4NjA3MDA3MDczLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCByaWdodHMgcmVzZXJ2ZWQuCgogICAgUEFUSDovaG9tZS9yeWFuL3dvcmtzcGFjZS9ub3ZhL25vdmEtYWRtaW4vZGlzdC9mbW9kZS1uZy9lc20yMDIyL2xpYi9haWdjL2NoYXQvY2hhdC1tZXNzYWdlLWFyZWEvY29tcC1tZXNzYWdlLWFyZWEuY29tcG9uZW50Lm1qcw==`
10
+
@@ -1,2 +1,10 @@
1
- export * from "./comp-message-area.component";
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mbW9kZS1uZy9zcmMvbGliL2FpZ2MvY2hhdC9jaGF0LW1lc3NhZ2UtYXJlYS9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLCtCQUErQixDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSBcIi4vY29tcC1tZXNzYWdlLWFyZWEuY29tcG9uZW50XCIiXX0=
1
+
2
+ /**
3
+ * @copyright © 未来飞马 © 未来全栈 www.fmode.cn
4
+ * 版权所有 © 未来飞马 © 江西脑控科技有限公司 Copyright © Fmode Technology Co., Ltd.
5
+ * 保留所有权利 All Rights Reserved.
6
+ * /home/ryan/workspace/nova/nova-admin/dist/fmode-ng/esm2022/lib/aigc/chat/chat-message-area/index.mjs
7
+ */
8
+ export*from"./comp-message-area.component";
9
+ var MODULE_PATH_NEED = `6K+l5paH5Lu25piv5pys6aG555uu55qE5LiA6YOo5YiGIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBDb21wb25lbnRzIGluIEZtb2RlIEluYy4KICAgIOeJiOadg+aJgOaciSDCqSDmnKrmnaXpo57pqawgwqkg5rGf6KW/6ISR5o6n56eR5oqA5pyJ6ZmQ5YWs5Y+4IENvcHlyaWdodCDCqSBGbW9kZSBUZWNobm9sb2d5IENvLiwgTHRkLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICDkuKXnpoHlnKjmnKrnu4/mjojmnYPnmoTmg4XlhrXkuIvvvIzpgJrov4fku7vkvZXlqpLku4vlpI3liLbmraTmlofku7YgVW5hdXRob3JpemVkIGNvcHlpbmcgb2YgdGhpcyBmaWxlLCB2aWEgYW55IG1lZGl1bSBpcyBzdHJpY3RseSBwcm9oaWJpdGVkCiAgICDor6Xmlofku7bmmK/kuJPmnInnmoTmnLrlr4bmlofku7YgUHJvcHJpZXRhcnkgYW5kIGNvbmZpZGVudGlhbAogICAKICAgIENvcHlyaWdodCAyMDIxLW5vdyBGbW9kZSBJbmMuIHN1cHBvcnRAZm1vZGUuY24uIDE4NjA3MDA3MDczLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCByaWdodHMgcmVzZXJ2ZWQuCgogICAgUEFUSDovaG9tZS9yeWFuL3dvcmtzcGFjZS9ub3ZhL25vdmEtYWRtaW4vZGlzdC9mbW9kZS1uZy9lc20yMDIyL2xpYi9haWdjL2NoYXQvY2hhdC1tZXNzYWdlLWFyZWEvaW5kZXgubWpz`
10
+