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,62 +1,10 @@
1
- import { Injectable } from '@angular/core';
2
- import { NavController, Platform } from '@ionic/angular';
3
- import * as i0 from "@angular/core";
4
- import * as i1 from "@ionic/angular";
5
- export class CrossService {
6
- getMenuType() {
7
- this.clientWidth = document.body.clientWidth;
8
- this.onResizeScreen();
9
- return this.navMenuType;
10
- }
11
- constructor(platform, navCtrl) {
12
- this.platform = platform;
13
- this.navCtrl = navCtrl;
14
- this.mobileWidth = 915;
15
- this.clientWidth = document.body.clientWidth;
16
- this.clientWidth = document.body.clientWidth;
17
- this.updateWidth();
18
- this.onResizeScreen();
19
- }
20
- async dismisModalTop(modalCtrl, event) {
21
- // 尝试获取顶层的模态对话框
22
- let topModal = await modalCtrl?.getTop();
23
- if (topModal) {
24
- event?.preventDefault && event?.preventDefault();
25
- // 如果存在模态对话框,则关闭它
26
- topModal.dismiss();
27
- topModal.isOpen = false;
28
- }
29
- }
30
- updateWidth() {
31
- this.fixInterval = setInterval(() => {
32
- if (this.clientWidth) {
33
- clearInterval(this.fixInterval);
34
- delete this.fixInterval;
35
- return;
36
- }
37
- console.log(document.body.clientWidth);
38
- this.clientWidth = document.body.clientWidth;
39
- }, 200);
40
- }
41
- // 监听窗体缩放事件
42
- onResizeScreen(ev) {
43
- this.clientWidth = document.body.clientWidth;
44
- if (this.clientWidth >= this.mobileWidth) {
45
- this.leftMenuMode = "horizontal";
46
- this.navMenuType = "pc";
47
- }
48
- else {
49
- this.leftMenuMode = "inline";
50
- this.navMenuType = "mobile";
51
- }
52
- }
53
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: CrossService, deps: [{ token: i1.Platform }, { token: i1.NavController }], target: i0.ɵɵFactoryTarget.Injectable }); }
54
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: CrossService, providedIn: 'root' }); }
55
- }
56
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: CrossService, decorators: [{
57
- type: Injectable,
58
- args: [{
59
- providedIn: 'root'
60
- }]
61
- }], ctorParameters: () => [{ type: i1.Platform }, { type: i1.NavController }] });
62
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3Jvc3Muc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Ztb2RlLW5nL3NyYy9saWIvcGxhdGZvcm0vY3Jvc3Muc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxhQUFhLEVBQUUsUUFBUSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7OztBQUt6RCxNQUFNLE9BQU8sWUFBWTtJQUd2QixXQUFXO1FBQ1QsSUFBSSxDQUFDLFdBQVcsR0FBRyxRQUFRLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQztRQUM3QyxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUE7UUFDckIsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFBO0lBQ3pCLENBQUM7SUFJRCxZQUNVLFFBQWlCLEVBQ2pCLE9BQXFCO1FBRHJCLGFBQVEsR0FBUixRQUFRLENBQVM7UUFDakIsWUFBTyxHQUFQLE9BQU8sQ0FBYztRQVovQixnQkFBVyxHQUFHLEdBQUcsQ0FBQztRQUNsQixnQkFBVyxHQUFVLFFBQVEsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDO1FBYTdDLElBQUksQ0FBQyxXQUFXLEdBQUcsUUFBUSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUE7UUFDNUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFBO1FBQ2xCLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQTtJQUN2QixDQUFDO0lBQ0QsS0FBSyxDQUFDLGNBQWMsQ0FBQyxTQUFhLEVBQUMsS0FBWTtRQUM3QyxlQUFlO1FBQ2YsSUFBSSxRQUFRLEdBQUcsTUFBTSxTQUFTLEVBQUUsTUFBTSxFQUFFLENBQUM7UUFDekMsSUFBSSxRQUFRLEVBQUUsQ0FBQztZQUNiLEtBQUssRUFBRSxjQUFjLElBQUUsS0FBSyxFQUFFLGNBQWMsRUFBRSxDQUFBO1lBQzlDLGlCQUFpQjtZQUNqQixRQUFRLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDbkIsUUFBUSxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUM7UUFDMUIsQ0FBQztJQUNILENBQUM7SUFDRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLFdBQVcsR0FBRyxXQUFXLENBQUMsR0FBRSxFQUFFO1lBQ2pDLElBQUcsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO2dCQUNwQixhQUFhLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO2dCQUNoQyxPQUFPLElBQUksQ0FBQyxXQUFXLENBQUE7Z0JBQ3ZCLE9BQU07WUFDUixDQUFDO1lBQ0QsT0FBTyxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFBO1lBQ3RDLElBQUksQ0FBQyxXQUFXLEdBQUcsUUFBUSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUM7UUFDL0MsQ0FBQyxFQUFDLEdBQUcsQ0FBQyxDQUFBO0lBQ1IsQ0FBQztJQUNELFdBQVc7SUFDWCxjQUFjLENBQUMsRUFBRztRQUNoQixJQUFJLENBQUMsV0FBVyxHQUFHLFFBQVEsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFBO1FBQzVDLElBQUcsSUFBSSxDQUFDLFdBQVcsSUFBRSxJQUFJLENBQUMsV0FBVyxFQUFDLENBQUM7WUFDckMsSUFBSSxDQUFDLFlBQVksR0FBRSxZQUFZLENBQUM7WUFDaEMsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUM7UUFDMUIsQ0FBQzthQUFJLENBQUM7WUFDSixJQUFJLENBQUMsWUFBWSxHQUFFLFFBQVEsQ0FBQztZQUM1QixJQUFJLENBQUMsV0FBVyxHQUFHLFFBQVEsQ0FBQztRQUM5QixDQUFDO0lBQ0gsQ0FBQzsrR0FsRFUsWUFBWTttSEFBWixZQUFZLGNBRlgsTUFBTTs7NEZBRVAsWUFBWTtrQkFIeEIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IE5hdkNvbnRyb2xsZXIsIFBsYXRmb3JtIH0gZnJvbSAnQGlvbmljL2FuZ3VsYXInO1xyXG5cclxuQEluamVjdGFibGUoe1xyXG4gIHByb3ZpZGVkSW46ICdyb290J1xyXG59KVxyXG5leHBvcnQgY2xhc3MgQ3Jvc3NTZXJ2aWNlIHtcclxuICBtb2JpbGVXaWR0aCA9IDkxNTtcclxuICBjbGllbnRXaWR0aDpudW1iZXIgPSBkb2N1bWVudC5ib2R5LmNsaWVudFdpZHRoO1xyXG4gIGdldE1lbnVUeXBlKCl7XHJcbiAgICB0aGlzLmNsaWVudFdpZHRoID0gZG9jdW1lbnQuYm9keS5jbGllbnRXaWR0aDtcclxuICAgIHRoaXMub25SZXNpemVTY3JlZW4oKVxyXG4gICAgcmV0dXJuIHRoaXMubmF2TWVudVR5cGVcclxuICB9XHJcbiAgbGVmdE1lbnVNb2RlOnN0cmluZ1xyXG4gIG5hdk1lbnVUeXBlOnN0cmluZ1xyXG4gIGZpeEludGVydmFsOmFueVxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBwbGF0Zm9ybTpQbGF0Zm9ybSxcclxuICAgIHByaXZhdGUgbmF2Q3RybDpOYXZDb250cm9sbGVyLFxyXG4gICl7XHJcbiAgICB0aGlzLmNsaWVudFdpZHRoID0gZG9jdW1lbnQuYm9keS5jbGllbnRXaWR0aFxyXG4gICAgdGhpcy51cGRhdGVXaWR0aCgpXHJcbiAgICB0aGlzLm9uUmVzaXplU2NyZWVuKClcclxuICB9XHJcbiAgYXN5bmMgZGlzbWlzTW9kYWxUb3AobW9kYWxDdHJsOmFueSxldmVudD86RXZlbnQpe1xyXG4gICAgLy8g5bCd6K+V6I635Y+W6aG25bGC55qE5qih5oCB5a+56K+d5qGGXHJcbiAgICBsZXQgdG9wTW9kYWwgPSBhd2FpdCBtb2RhbEN0cmw/LmdldFRvcCgpO1xyXG4gICAgaWYgKHRvcE1vZGFsKSB7XHJcbiAgICAgIGV2ZW50Py5wcmV2ZW50RGVmYXVsdCYmZXZlbnQ/LnByZXZlbnREZWZhdWx0KClcclxuICAgICAgLy8g5aaC5p6c5a2Y5Zyo5qih5oCB5a+56K+d5qGG77yM5YiZ5YWz6Zet5a6DXHJcbiAgICAgIHRvcE1vZGFsLmRpc21pc3MoKTtcclxuICAgICAgdG9wTW9kYWwuaXNPcGVuID0gZmFsc2U7XHJcbiAgICB9XHJcbiAgfVxyXG4gIHVwZGF0ZVdpZHRoKCl7XHJcbiAgICB0aGlzLmZpeEludGVydmFsID0gc2V0SW50ZXJ2YWwoKCk9PntcclxuICAgICAgaWYodGhpcy5jbGllbnRXaWR0aCkge1xyXG4gICAgICAgIGNsZWFySW50ZXJ2YWwodGhpcy5maXhJbnRlcnZhbCk7XHJcbiAgICAgICAgZGVsZXRlIHRoaXMuZml4SW50ZXJ2YWxcclxuICAgICAgICByZXR1cm5cclxuICAgICAgfVxyXG4gICAgICBjb25zb2xlLmxvZyhkb2N1bWVudC5ib2R5LmNsaWVudFdpZHRoKVxyXG4gICAgICB0aGlzLmNsaWVudFdpZHRoID0gZG9jdW1lbnQuYm9keS5jbGllbnRXaWR0aDtcclxuICAgIH0sMjAwKVxyXG4gIH1cclxuICAvLyDnm5HlkKznqpfkvZPnvKnmlL7kuovku7ZcclxuICBvblJlc2l6ZVNjcmVlbihldj8pe1xyXG4gICAgdGhpcy5jbGllbnRXaWR0aCA9IGRvY3VtZW50LmJvZHkuY2xpZW50V2lkdGhcclxuICAgIGlmKHRoaXMuY2xpZW50V2lkdGg+PXRoaXMubW9iaWxlV2lkdGgpe1xyXG4gICAgICB0aGlzLmxlZnRNZW51TW9kZT0gXCJob3Jpem9udGFsXCI7XHJcbiAgICAgIHRoaXMubmF2TWVudVR5cGUgPSBcInBjXCI7XHJcbiAgICB9ZWxzZXtcclxuICAgICAgdGhpcy5sZWZ0TWVudU1vZGU9IFwiaW5saW5lXCI7XHJcbiAgICAgIHRoaXMubmF2TWVudVR5cGUgPSBcIm1vYmlsZVwiO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iXX0=
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/platform/cross.service.mjs
7
+ */
8
+ import{Injectable}from"@angular/core";import{NavController,Platform}from"@ionic/angular";import*as i0 from"@angular/core";import*as i1 from"@ionic/angular";export class CrossService{getMenuType(){return this.clientWidth=document.body.clientWidth,this.onResizeScreen(),this.navMenuType}constructor(t,e){this.platform=t,this.navCtrl=e,this.mobileWidth=915,this.clientWidth=document.body.clientWidth,this.clientWidth=document.body.clientWidth,this.updateWidth(),this.onResizeScreen()}async dismisModalTop(t,e){let i=await(t?.getTop());i&&(e?.preventDefault&&e?.preventDefault(),i.dismiss(),i.isOpen=!1)}updateWidth(){this.fixInterval=setInterval((()=>{if(this.clientWidth)return clearInterval(this.fixInterval),void delete this.fixInterval;console.log(document.body.clientWidth),this.clientWidth=document.body.clientWidth}),200)}onResizeScreen(t){this.clientWidth=document.body.clientWidth,this.clientWidth>=this.mobileWidth?(this.leftMenuMode="horizontal",this.navMenuType="pc"):(this.leftMenuMode="inline",this.navMenuType="mobile")}static{this.ɵfac=i0.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"17.3.12",ngImport:i0,type:CrossService,deps:[{token:i1.Platform},{token:i1.NavController}],target:i0.ɵɵFactoryTarget.Injectable})}static{this.ɵprov=i0.ɵɵngDeclareInjectable({minVersion:"12.0.0",version:"17.3.12",ngImport:i0,type:CrossService,providedIn:"root"})}}i0.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"17.3.12",ngImport:i0,type:CrossService,decorators:[{type:Injectable,args:[{providedIn:"root"}]}],ctorParameters:()=>[{type:i1.Platform},{type:i1.NavController}]});
9
+ var MODULE_PATH_NEED = `6K+l5paH5Lu25piv5pys6aG555uu55qE5LiA6YOo5YiGIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBDb21wb25lbnRzIGluIEZtb2RlIEluYy4KICAgIOeJiOadg+aJgOaciSDCqSDmnKrmnaXpo57pqawgwqkg5rGf6KW/6ISR5o6n56eR5oqA5pyJ6ZmQ5YWs5Y+4IENvcHlyaWdodCDCqSBGbW9kZSBUZWNobm9sb2d5IENvLiwgTHRkLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICDkuKXnpoHlnKjmnKrnu4/mjojmnYPnmoTmg4XlhrXkuIvvvIzpgJrov4fku7vkvZXlqpLku4vlpI3liLbmraTmlofku7YgVW5hdXRob3JpemVkIGNvcHlpbmcgb2YgdGhpcyBmaWxlLCB2aWEgYW55IG1lZGl1bSBpcyBzdHJpY3RseSBwcm9oaWJpdGVkCiAgICDor6Xmlofku7bmmK/kuJPmnInnmoTmnLrlr4bmlofku7YgUHJvcHJpZXRhcnkgYW5kIGNvbmZpZGVudGlhbAogICAKICAgIENvcHlyaWdodCAyMDIxLW5vdyBGbW9kZSBJbmMuIHN1cHBvcnRAZm1vZGUuY24uIDE4NjA3MDA3MDczLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCByaWdodHMgcmVzZXJ2ZWQuCgogICAgUEFUSDovaG9tZS9yeWFuL3dvcmtzcGFjZS9ub3ZhL25vdmEtYWRtaW4vZGlzdC9mbW9kZS1uZy9lc20yMDIyL2xpYi9wbGF0Zm9ybS9jcm9zcy5zZXJ2aWNlLm1qcw==`
10
+
@@ -1,2 +1,10 @@
1
- export * from "./cross.service";
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mbW9kZS1uZy9zcmMvbGliL3BsYXRmb3JtL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsaUJBQWlCLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tIFwiLi9jcm9zcy5zZXJ2aWNlXCIiXX0=
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/platform/index.mjs
7
+ */
8
+ export*from"./cross.service";
9
+ var MODULE_PATH_NEED = `6K+l5paH5Lu25piv5pys6aG555uu55qE5LiA6YOo5YiGIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBDb21wb25lbnRzIGluIEZtb2RlIEluYy4KICAgIOeJiOadg+aJgOaciSDCqSDmnKrmnaXpo57pqawgwqkg5rGf6KW/6ISR5o6n56eR5oqA5pyJ6ZmQ5YWs5Y+4IENvcHlyaWdodCDCqSBGbW9kZSBUZWNobm9sb2d5IENvLiwgTHRkLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICDkuKXnpoHlnKjmnKrnu4/mjojmnYPnmoTmg4XlhrXkuIvvvIzpgJrov4fku7vkvZXlqpLku4vlpI3liLbmraTmlofku7YgVW5hdXRob3JpemVkIGNvcHlpbmcgb2YgdGhpcyBmaWxlLCB2aWEgYW55IG1lZGl1bSBpcyBzdHJpY3RseSBwcm9oaWJpdGVkCiAgICDor6Xmlofku7bmmK/kuJPmnInnmoTmnLrlr4bmlofku7YgUHJvcHJpZXRhcnkgYW5kIGNvbmZpZGVudGlhbAogICAKICAgIENvcHlyaWdodCAyMDIxLW5vdyBGbW9kZSBJbmMuIHN1cHBvcnRAZm1vZGUuY24uIDE4NjA3MDA3MDczLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCByaWdodHMgcmVzZXJ2ZWQuCgogICAgUEFUSDovaG9tZS9yeWFuL3dvcmtzcGFjZS9ub3ZhL25vdmEtYWRtaW4vZGlzdC9mbW9kZS1uZy9lc20yMDIyL2xpYi9wbGF0Zm9ybS9pbmRleC5tanM=`
10
+
@@ -1,2 +1,10 @@
1
- export * from "./wechat/wechat-jssdk.service";
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mbW9kZS1uZy9zcmMvbGliL3NvY2lhbC9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLCtCQUErQixDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSBcIi4vd2VjaGF0L3dlY2hhdC1qc3Nkay5zZXJ2aWNlXCIiXX0=
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/social/index.mjs
7
+ */
8
+ export*from"./wechat/wechat-jssdk.service";
9
+ var MODULE_PATH_NEED = `6K+l5paH5Lu25piv5pys6aG555uu55qE5LiA6YOo5YiGIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBDb21wb25lbnRzIGluIEZtb2RlIEluYy4KICAgIOeJiOadg+aJgOaciSDCqSDmnKrmnaXpo57pqawgwqkg5rGf6KW/6ISR5o6n56eR5oqA5pyJ6ZmQ5YWs5Y+4IENvcHlyaWdodCDCqSBGbW9kZSBUZWNobm9sb2d5IENvLiwgTHRkLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICDkuKXnpoHlnKjmnKrnu4/mjojmnYPnmoTmg4XlhrXkuIvvvIzpgJrov4fku7vkvZXlqpLku4vlpI3liLbmraTmlofku7YgVW5hdXRob3JpemVkIGNvcHlpbmcgb2YgdGhpcyBmaWxlLCB2aWEgYW55IG1lZGl1bSBpcyBzdHJpY3RseSBwcm9oaWJpdGVkCiAgICDor6Xmlofku7bmmK/kuJPmnInnmoTmnLrlr4bmlofku7YgUHJvcHJpZXRhcnkgYW5kIGNvbmZpZGVudGlhbAogICAKICAgIENvcHlyaWdodCAyMDIxLW5vdyBGbW9kZSBJbmMuIHN1cHBvcnRAZm1vZGUuY24uIDE4NjA3MDA3MDczLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCByaWdodHMgcmVzZXJ2ZWQuCgogICAgUEFUSDovaG9tZS9yeWFuL3dvcmtzcGFjZS9ub3ZhL25vdmEtYWRtaW4vZGlzdC9mbW9kZS1uZy9lc20yMDIyL2xpYi9zb2NpYWwvaW5kZXgubWpz`
10
+
@@ -1,232 +1,10 @@
1
- import { HttpClient } from '@angular/common/http';
2
- import { Injectable } from '@angular/core';
3
- import { AuthService } from '../../user/login/auth.service';
4
- import Parse from "parse";
5
- import * as i0 from "@angular/core";
6
- import * as i1 from "@angular/common/http";
7
- import * as i2 from "../../user/login/auth.service";
8
- // 微信JSSDK官方文档:https://developers.weixin.qq.com/doc/offiaccount/OA_Web_Apps/JS-SDK.html
9
- export class WechatJssdkService {
10
- constructor(http, authServ) {
11
- this.http = http;
12
- this.authServ = authServ;
13
- this.isInit = false;
14
- this.isWechat = false; // 服务初始化即判断是否微信浏览器
15
- this.wechatAccountId = localStorage.getItem("WECHAT_APP_ID"); // 微信公众号ID
16
- // 检测微信环境
17
- let ua = navigator.userAgent.toLowerCase();
18
- let isWechat = ua.indexOf('micromessenger') !== -1;
19
- this.isWechat = isWechat;
20
- // 初始化帐套
21
- this.company = this.authServ.company || localStorage.getItem("company");
22
- this.wechatAccountId = this.authServ.appId || localStorage.getItem("WECHAT_APP_ID");
23
- }
1
+
24
2
  /**
25
- * 配置当前页面分享参数
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/social/wechat/wechat-jssdk.service.mjs
26
7
  */
27
- async setCurrentPageShareInfo(shareInfo = {
28
- title: '飞码AI', // 分享标题
29
- desc: '解放创意引领未来|国际前沿的AIGC平台', // 分享描述
30
- link: location.href, // 分享链接,该链接域名或路径必须与当前页面对应的公众号JS安全域名一致
31
- type: 'link', //分享类型,music、video或link,不填默认为link
32
- imgUrl: 'https://file-cloud.fmode.cn/E4KpGvTEto/20230822/3mkf41033623275.png', // 分享图标
33
- success: () => {
34
- // 设置成功
35
- console.log('分享成功');
36
- },
37
- error: () => {
38
- console.log('分享失败');
39
- },
40
- cancel: () => {
41
- console.log('取消分享');
42
- }
43
- }) {
44
- const signPackage = await this.getWXSignPackageInWechat();
45
- wx.config({
46
- debug: false, // 开启调试模式
47
- appId: signPackage.appid, // 必填,公众号的唯一标识
48
- timestamp: signPackage.timestamp, // 必填,生成签名的时间戳
49
- nonceStr: signPackage.nonceStr, // 必填,生成签名的随机串
50
- signature: signPackage.signature, // 必填,签名,见附录1
51
- jsApiList: [
52
- "chooseWXPay", // JSAPI微信支付
53
- 'onMenuShareTimeline', //分享到微信朋友圈
54
- 'onMenuShareAppMessage', //分享给微信朋友
55
- 'onMenuShareQQ', //分享到QQ
56
- 'onMenuShareQZone', //分享到QQ空间
57
- 'updateAppMessageShareData', //分享到微信及QQ(新接口)
58
- 'updateTimelineShareData' //分享到朋友圈”及“分享到QQ空间(新接口
59
- ], // 必填,需要使用的JS接口列表,所有JS接口列表见附录2
60
- });
61
- if (shareInfo?.type == "link") {
62
- // 判断是否有参数
63
- shareInfo.link = this.getInviteUrl(shareInfo.link);
64
- }
65
- wx.ready(() => {
66
- wx.updateAppMessageShareData(shareInfo); //分享到微信好友或者qq好友
67
- wx.updateTimelineShareData(shareInfo); //分享到朋友圈或者qq空间
68
- });
69
- wx.error(() => { });
70
- }
71
- getInviteUrl(url) {
72
- let u = new URL(url);
73
- let id = Parse.User?.current()?.id;
74
- if (id) {
75
- u.searchParams.set("invite", id);
76
- }
77
- return u.href;
78
- }
79
- /**
80
- * 当前页面获取微信授权签名
81
- */
82
- /* 获取微信签名 */
83
- getWXSignPackageInWechat() {
84
- let params = {
85
- company: this.company,
86
- // href: encodeURIComponent(location.href.split("?")[0]),
87
- href: encodeURIComponent(location.href),
88
- };
89
- return new Promise(resolve => {
90
- this.http
91
- .post(`https://server.fmode.cn/api/wechat/getconfig`, params)
92
- .subscribe((response) => {
93
- // 返回的签名信息
94
- let res = response;
95
- let signPackage = res.data;
96
- resolve(signPackage);
97
- });
98
- });
99
- }
100
- /** 微信用户初始化
101
- * @desc 为当前已登录用户,获取微信授权openid信息
102
- */
103
- /* 如果是微信内置浏览器,初始化用户openid信息,获取登录code */
104
- async initUserOpenid() {
105
- await this.init();
106
- if (!this.wechatAccountId)
107
- return alert("appId不存在,请先配置");
108
- let code = this.getQueryStringByName("code");
109
- let openid = localStorage.getItem("openid");
110
- if (!openid) {
111
- if (!Parse.User.current())
112
- return;
113
- openid = Parse?.User?.current()?.get("wechat")?.[this.wechatAccountId]?.openid;
114
- if (this.isWechat && !openid) { // 不存在则获取
115
- let pathname = window.location.pathname;
116
- if (!code) {
117
- this.authWechat(pathname);
118
- }
119
- else {
120
- await this.getwechat(code, pathname);
121
- }
122
- }
123
- else {
124
- this.openid = openid; // 存在则加载
125
- }
126
- }
127
- }
128
- authWechat(url = window.location.pathname) {
129
- if (!localStorage.getItem("openid")) {
130
- let origin = window.location.origin;
131
- let REDIRECT_URI = origin + url;
132
- REDIRECT_URI = encodeURIComponent(REDIRECT_URI);
133
- // console.log(REDIRECT_URI);
134
- // console.log(
135
- // "https://open.weixin.qq.com/connect/oauth2/authorize?appid=" +
136
- // this.wechatAccountId +
137
- // "&redirect_uri=" +
138
- // REDIRECT_URI +
139
- // "&response_type=code&scope=snsapi_base&state=STATE#wechat_redirect"
140
- // );
141
- window.location.href =
142
- "https://open.weixin.qq.com/connect/oauth2/authorize?appid=" +
143
- this.wechatAccountId +
144
- "&redirect_uri=" +
145
- REDIRECT_URI +
146
- "&response_type=code&scope=snsapi_userinfo&state=STATE#wechat_redirect";
147
- return;
148
- }
149
- }
150
- //根据QueryString参数名称获取值
151
- getQueryStringByName(name) {
152
- let result = location.search.match(new RegExp("[?&]" + name + "=([^&]+)", "i"));
153
- if (result == null || result.length < 1) {
154
- return "";
155
- }
156
- return result[1];
157
- }
158
- async getwechat(code, url = "/account/billing") {
159
- return new Promise(async (resolve, reject) => {
160
- this.http
161
- .post(`https://server.fmode.cn/api/wechat/get_wx`, {
162
- company: this.company,
163
- code: code,
164
- })
165
- .subscribe(async (res) => {
166
- console.log(res);
167
- if (res && res.code == 200 && res.data.openid) {
168
- let openid = res.data.openid;
169
- // localStorage.setItem('authData', JSON.stringify(res.data))
170
- localStorage.setItem("openid", openid);
171
- localStorage.removeItem("code");
172
- let userWechat = {};
173
- userWechat[this.wechatAccountId] = { "openid": openid };
174
- Parse.User.current().set("wechat", userWechat);
175
- await Parse.User.current().save();
176
- resolve(true);
177
- }
178
- }, async (err) => {
179
- console.log("Error updating items", err);
180
- this.authWechat(url);
181
- reject(false);
182
- });
183
- });
184
- }
185
- /** 微信环境初始化 */
186
- init() {
187
- return new Promise(resolve => {
188
- if (!this.isWechat)
189
- resolve(false); // 非微信环境无需加载
190
- if (this.isInit)
191
- resolve(true); // ts函数 已初始化无需重复加载
192
- if (wx)
193
- resolve(true); // index.html 已加载无需重复加载
194
- // 调用函数加载指定脚本文件
195
- this.loadScript('https://res.wx.qq.com/open/js/jweixin-1.6.0.js', () => {
196
- // 在脚本加载完成后执行的操作
197
- this.isInit = true;
198
- this.wx = wx;
199
- // 在这里可以使用加载的脚本
200
- resolve(true);
201
- }, () => {
202
- resolve(false);
203
- });
204
- });
205
- }
206
- loadScript(url, callback, errCallback) {
207
- var script = document.createElement('script');
208
- script.src = url;
209
- // 脚本加载完成后的回调函数
210
- script.onload = () => {
211
- if (callback) {
212
- callback();
213
- }
214
- };
215
- script.onerror = () => {
216
- if (errCallback) {
217
- errCallback();
218
- }
219
- };
220
- // 将脚本添加到页面中
221
- document.body.appendChild(script);
222
- }
223
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: WechatJssdkService, deps: [{ token: i1.HttpClient }, { token: i2.AuthService }], target: i0.ɵɵFactoryTarget.Injectable }); }
224
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: WechatJssdkService, providedIn: 'root' }); }
225
- }
226
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: WechatJssdkService, decorators: [{
227
- type: Injectable,
228
- args: [{
229
- providedIn: 'root'
230
- }]
231
- }], ctorParameters: () => [{ type: i1.HttpClient }, { type: i2.AuthService }] });
232
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2VjaGF0LWpzc2RrLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mbW9kZS1uZy9zcmMvbGliL3NvY2lhbC93ZWNoYXQvd2VjaGF0LWpzc2RrLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQzVELE9BQU8sS0FBSyxNQUFNLE9BQU8sQ0FBQzs7OztBQUcxQix1RkFBdUY7QUFLdkYsTUFBTSxPQUFPLGtCQUFrQjtJQVM3QixZQUNVLElBQWUsRUFDZixRQUFxQjtRQURyQixTQUFJLEdBQUosSUFBSSxDQUFXO1FBQ2YsYUFBUSxHQUFSLFFBQVEsQ0FBYTtRQVQvQixXQUFNLEdBQVcsS0FBSyxDQUFDO1FBQ3ZCLGFBQVEsR0FBVyxLQUFLLENBQUMsQ0FBQyxrQkFBa0I7UUFHNUMsb0JBQWUsR0FBVSxZQUFZLENBQUMsT0FBTyxDQUFDLGVBQWUsQ0FBQyxDQUFBLENBQUMsVUFBVTtRQU9yRSxTQUFTO1FBQ1QsSUFBSSxFQUFFLEdBQUcsU0FBUyxDQUFDLFNBQVMsQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUMzQyxJQUFJLFFBQVEsR0FBRyxFQUFFLENBQUMsT0FBTyxDQUFDLGdCQUFnQixDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7UUFDbkQsSUFBSSxDQUFDLFFBQVEsR0FBRyxRQUFRLENBQUE7UUFDeEIsUUFBUTtRQUNSLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLElBQUksWUFBWSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUN4RSxJQUFJLENBQUMsZUFBZSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxJQUFJLFlBQVksQ0FBQyxPQUFPLENBQUMsZUFBZSxDQUFDLENBQUE7SUFDdkYsQ0FBQztJQUNEOztPQUVHO0lBRUgsS0FBSyxDQUFDLHVCQUF1QixDQUFDLFNBQVMsR0FBQztRQUN0QyxLQUFLLEVBQUUsTUFBTSxFQUFFLE9BQU87UUFDdEIsSUFBSSxFQUFFLHNCQUFzQixFQUFFLE9BQU87UUFDckMsSUFBSSxFQUFFLFFBQVEsQ0FBQyxJQUFJLEVBQUUscUNBQXFDO1FBQzFELElBQUksRUFBRSxNQUFNLEVBQUUsaUNBQWlDO1FBQy9DLE1BQU0sRUFBRSxxRUFBcUUsRUFBRSxPQUFPO1FBQ3RGLE9BQU8sRUFBRSxHQUFHLEVBQUU7WUFDWixPQUFPO1lBQ1AsT0FBTyxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUN0QixDQUFDO1FBQ0QsS0FBSyxFQUFFLEdBQUcsRUFBRTtZQUNWLE9BQU8sQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDdEIsQ0FBQztRQUNELE1BQU0sRUFBRSxHQUFHLEVBQUU7WUFDWCxPQUFPLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ3RCLENBQUM7S0FDRjtRQUNDLE1BQU0sV0FBVyxHQUFHLE1BQU0sSUFBSSxDQUFDLHdCQUF3QixFQUFFLENBQUE7UUFFekQsRUFBRSxDQUFDLE1BQU0sQ0FBQztZQUNSLEtBQUssRUFBRSxLQUFLLEVBQUUsU0FBUztZQUN2QixLQUFLLEVBQUUsV0FBVyxDQUFDLEtBQUssRUFBRSxjQUFjO1lBQ3hDLFNBQVMsRUFBRSxXQUFXLENBQUMsU0FBUyxFQUFFLGNBQWM7WUFDaEQsUUFBUSxFQUFFLFdBQVcsQ0FBQyxRQUFRLEVBQUUsY0FBYztZQUM5QyxTQUFTLEVBQUUsV0FBVyxDQUFDLFNBQVMsRUFBRSxhQUFhO1lBQy9DLFNBQVMsRUFBRTtnQkFDVCxhQUFhLEVBQUUsWUFBWTtnQkFDM0IscUJBQXFCLEVBQUUsVUFBVTtnQkFDakMsdUJBQXVCLEVBQUUsU0FBUztnQkFDbEMsZUFBZSxFQUFFLE9BQU87Z0JBQ3hCLGtCQUFrQixFQUFFLFNBQVM7Z0JBQzdCLDJCQUEyQixFQUFFLGVBQWU7Z0JBQzVDLHlCQUF5QixDQUFDLHNCQUFzQjthQUNqRCxFQUFFLDhCQUE4QjtTQUNsQyxDQUFDLENBQUM7UUFFSCxJQUFHLFNBQVMsRUFBRSxJQUFJLElBQUUsTUFBTSxFQUFDLENBQUM7WUFDMUIsVUFBVTtZQUNWLFNBQVMsQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUE7UUFDcEQsQ0FBQztRQUVELEVBQUUsQ0FBQyxLQUFLLENBQUMsR0FBRyxFQUFFO1lBQ1osRUFBRSxDQUFDLHlCQUF5QixDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsZUFBZTtZQUN4RCxFQUFFLENBQUMsdUJBQXVCLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxjQUFjO1FBQ3ZELENBQUMsQ0FBQyxDQUFDO1FBQ0gsRUFBRSxDQUFDLEtBQUssQ0FBQyxHQUFHLEVBQUUsR0FBRSxDQUFDLENBQUMsQ0FBQztJQUNyQixDQUFDO0lBQ0QsWUFBWSxDQUFDLEdBQUc7UUFDZCxJQUFJLENBQUMsR0FBRyxJQUFJLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUNyQixJQUFJLEVBQUUsR0FBRyxLQUFLLENBQUMsSUFBSSxFQUFFLE9BQU8sRUFBRSxFQUFFLEVBQUUsQ0FBQTtRQUNsQyxJQUFHLEVBQUUsRUFBQyxDQUFDO1lBQ0wsQ0FBQyxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsUUFBUSxFQUFDLEVBQUUsQ0FBQyxDQUFBO1FBQ2pDLENBQUM7UUFDRCxPQUFPLENBQUMsQ0FBQyxJQUFJLENBQUE7SUFDZixDQUFDO0lBRUQ7O09BRUc7SUFDSCxZQUFZO0lBQ1osd0JBQXdCO1FBQ3RCLElBQUksTUFBTSxHQUFHO1lBQ1gsT0FBTyxFQUFFLElBQUksQ0FBQyxPQUFPO1lBQ3JCLHlEQUF5RDtZQUN6RCxJQUFJLEVBQUUsa0JBQWtCLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQztTQUN4QyxDQUFDO1FBQ0YsT0FBTyxJQUFJLE9BQU8sQ0FBQyxPQUFPLENBQUEsRUFBRTtZQUMxQixJQUFJLENBQUMsSUFBSTtpQkFDUixJQUFJLENBQUMsOENBQThDLEVBQUUsTUFBTSxDQUFDO2lCQUM1RCxTQUFTLENBQUMsQ0FBQyxRQUFRLEVBQUUsRUFBRTtnQkFDdEIsVUFBVTtnQkFDVixJQUFJLEdBQUcsR0FBUSxRQUFRLENBQUM7Z0JBQ3hCLElBQUksV0FBVyxHQUFHLEdBQUcsQ0FBQyxJQUFJLENBQUM7Z0JBQzNCLE9BQU8sQ0FBQyxXQUFXLENBQUMsQ0FBQTtZQUN0QixDQUFDLENBQUMsQ0FBQztRQUNMLENBQUMsQ0FBQyxDQUFBO0lBQ0osQ0FBQztJQUVEOztNQUVFO0lBQ0YsdUNBQXVDO0lBQ3ZDLEtBQUssQ0FBQyxjQUFjO1FBQ2xCLE1BQU0sSUFBSSxDQUFDLElBQUksRUFBRSxDQUFBO1FBQ2pCLElBQUcsQ0FBQyxJQUFJLENBQUMsZUFBZTtZQUFFLE9BQU8sS0FBSyxDQUFDLGVBQWUsQ0FBQyxDQUFBO1FBQ3ZELElBQUksSUFBSSxHQUFHLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUM3QyxJQUFJLE1BQU0sR0FBRyxZQUFZLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQzVDLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUNaLElBQUcsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRTtnQkFBRSxPQUFNO1lBQ2hDLE1BQU0sR0FBRyxLQUFLLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxFQUFFLEdBQUcsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsRUFBRSxNQUFNLENBQUM7WUFDL0UsSUFBSSxJQUFJLENBQUMsUUFBUSxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQyxTQUFTO2dCQUN2QyxJQUFJLFFBQVEsR0FBRyxNQUFNLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQTtnQkFDdkMsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO29CQUNWLElBQUksQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLENBQUM7Z0JBQzVCLENBQUM7cUJBQU0sQ0FBQztvQkFDTixNQUFNLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFDLFFBQVEsQ0FBQyxDQUFDO2dCQUN0QyxDQUFDO1lBQ0gsQ0FBQztpQkFBSSxDQUFDO2dCQUNKLElBQUksQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFBLENBQUMsUUFBUTtZQUMvQixDQUFDO1FBQ0gsQ0FBQztJQUNILENBQUM7SUFDRCxVQUFVLENBQUMsTUFBYyxNQUFNLENBQUMsUUFBUSxDQUFDLFFBQVE7UUFDL0MsSUFBSSxDQUFDLFlBQVksQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQztZQUNwQyxJQUFJLE1BQU0sR0FBRyxNQUFNLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQztZQUNwQyxJQUFJLFlBQVksR0FBRyxNQUFNLEdBQUcsR0FBRyxDQUFDO1lBQ2hDLFlBQVksR0FBRyxrQkFBa0IsQ0FBQyxZQUFZLENBQUMsQ0FBQztZQUNoRCw2QkFBNkI7WUFDN0IsZUFBZTtZQUNmLG1FQUFtRTtZQUNuRSw2QkFBNkI7WUFDN0IseUJBQXlCO1lBQ3pCLHFCQUFxQjtZQUNyQiwwRUFBMEU7WUFDMUUsS0FBSztZQUNMLE1BQU0sQ0FBQyxRQUFRLENBQUMsSUFBSTtnQkFDbEIsNERBQTREO29CQUM1RCxJQUFJLENBQUMsZUFBZTtvQkFDcEIsZ0JBQWdCO29CQUNoQixZQUFZO29CQUNaLHVFQUF1RSxDQUFDO1lBQzFFLE9BQU87UUFDVCxDQUFDO0lBQ0gsQ0FBQztJQUNELHNCQUFzQjtJQUN0QixvQkFBb0IsQ0FBQyxJQUFZO1FBQy9CLElBQUksTUFBTSxHQUFHLFFBQVEsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUNoQyxJQUFJLE1BQU0sQ0FBQyxNQUFNLEdBQUcsSUFBSSxHQUFHLFVBQVUsRUFBRSxHQUFHLENBQUMsQ0FDNUMsQ0FBQztRQUNGLElBQUksTUFBTSxJQUFJLElBQUksSUFBSSxNQUFNLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRSxDQUFDO1lBQ3hDLE9BQU8sRUFBRSxDQUFDO1FBQ1osQ0FBQztRQUNELE9BQU8sTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ25CLENBQUM7SUFDRCxLQUFLLENBQUMsU0FBUyxDQUNiLElBQVksRUFDWixNQUFjLGtCQUFrQjtRQUVoQyxPQUFPLElBQUksT0FBTyxDQUFDLEtBQUssRUFBRSxPQUFPLEVBQUUsTUFBTSxFQUFFLEVBQUU7WUFDM0MsSUFBSSxDQUFDLElBQUk7aUJBQ04sSUFBSSxDQUFDLDJDQUEyQyxFQUFFO2dCQUNqRCxPQUFPLEVBQUUsSUFBSSxDQUFDLE9BQU87Z0JBQ3JCLElBQUksRUFBRSxJQUFJO2FBQ1gsQ0FBQztpQkFDRCxTQUFTLENBQ1IsS0FBSyxFQUFFLEdBQVEsRUFBRSxFQUFFO2dCQUNqQixPQUFPLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDO2dCQUNqQixJQUFJLEdBQUcsSUFBSSxHQUFHLENBQUMsSUFBSSxJQUFJLEdBQUcsSUFBSSxHQUFHLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO29CQUM5QyxJQUFJLE1BQU0sR0FBRyxHQUFHLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQztvQkFDN0IsNkRBQTZEO29CQUM3RCxZQUFZLENBQUMsT0FBTyxDQUFDLFFBQVEsRUFBRSxNQUFNLENBQUMsQ0FBQztvQkFDdkMsWUFBWSxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsQ0FBQztvQkFDaEMsSUFBSSxVQUFVLEdBQUcsRUFBRSxDQUFBO29CQUNuQixVQUFVLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxHQUFHLEVBQUMsUUFBUSxFQUFFLE1BQU0sRUFBQyxDQUFBO29CQUNyRCxLQUFLLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDLEdBQUcsQ0FBQyxRQUFRLEVBQUUsVUFBVSxDQUFDLENBQUM7b0JBQy9DLE1BQU0sS0FBSyxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQyxJQUFJLEVBQUUsQ0FBQztvQkFDbEMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO2dCQUNoQixDQUFDO1lBQ0gsQ0FBQyxFQUNELEtBQUssRUFBRSxHQUFHLEVBQUUsRUFBRTtnQkFDWixPQUFPLENBQUMsR0FBRyxDQUFDLHNCQUFzQixFQUFFLEdBQUcsQ0FBQyxDQUFDO2dCQUN6QyxJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFDO2dCQUNyQixNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDaEIsQ0FBQyxDQUNGLENBQUM7UUFDTixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxjQUFjO0lBQ2QsSUFBSTtRQUNGLE9BQU8sSUFBSSxPQUFPLENBQUMsT0FBTyxDQUFBLEVBQUU7WUFDeEIsSUFBRyxDQUFDLElBQUksQ0FBQyxRQUFRO2dCQUFFLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQSxDQUFDLFlBQVk7WUFDOUMsSUFBRyxJQUFJLENBQUMsTUFBTTtnQkFBRSxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUEsQ0FBQyxrQkFBa0I7WUFDaEQsSUFBRyxFQUFFO2dCQUFFLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQSxDQUFDLHVCQUF1QjtZQUM1QyxlQUFlO1lBQ2YsSUFBSSxDQUFDLFVBQVUsQ0FBQyxnREFBZ0QsRUFBRSxHQUFHLEVBQUU7Z0JBQ3JFLGdCQUFnQjtnQkFDaEIsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUM7Z0JBQ25CLElBQUksQ0FBQyxFQUFFLEdBQUcsRUFBRSxDQUFDO2dCQUNiLGVBQWU7Z0JBQ2YsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFBO1lBQ2YsQ0FBQyxFQUFDLEdBQUUsRUFBRTtnQkFDSixPQUFPLENBQUMsS0FBSyxDQUFDLENBQUE7WUFDaEIsQ0FBQyxDQUFDLENBQUM7UUFDTCxDQUFDLENBQUMsQ0FBQTtJQUNOLENBQUM7SUFDRCxVQUFVLENBQUMsR0FBRyxFQUFFLFFBQVEsRUFBQyxXQUFXO1FBQ2xDLElBQUksTUFBTSxHQUFHLFFBQVEsQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDOUMsTUFBTSxDQUFDLEdBQUcsR0FBRyxHQUFHLENBQUM7UUFDakIsZUFBZTtRQUNmLE1BQU0sQ0FBQyxNQUFNLEdBQUcsR0FBRyxFQUFFO1lBQ25CLElBQUksUUFBUSxFQUFFLENBQUM7Z0JBQ2IsUUFBUSxFQUFFLENBQUM7WUFDYixDQUFDO1FBQ0gsQ0FBQyxDQUFDO1FBQ0YsTUFBTSxDQUFDLE9BQU8sR0FBRyxHQUFFLEVBQUU7WUFDbkIsSUFBRyxXQUFXLEVBQUMsQ0FBQztnQkFDZCxXQUFXLEVBQUUsQ0FBQztZQUNoQixDQUFDO1FBQ0gsQ0FBQyxDQUFBO1FBQ0QsWUFBWTtRQUNaLFFBQVEsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ3BDLENBQUM7K0dBbk9VLGtCQUFrQjttSEFBbEIsa0JBQWtCLGNBRmpCLE1BQU07OzRGQUVQLGtCQUFrQjtrQkFIOUIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIdHRwQ2xpZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xyXG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEF1dGhTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vdXNlci9sb2dpbi9hdXRoLnNlcnZpY2UnO1xyXG5pbXBvcnQgUGFyc2UgZnJvbSBcInBhcnNlXCI7XHJcbmRlY2xhcmUgdmFyIHd4OiBhbnk7XHJcblxyXG4vLyDlvq7kv6FKU1NES+WumOaWueaWh+aho++8mmh0dHBzOi8vZGV2ZWxvcGVycy53ZWl4aW4ucXEuY29tL2RvYy9vZmZpYWNjb3VudC9PQV9XZWJfQXBwcy9KUy1TREsuaHRtbFxyXG5cclxuQEluamVjdGFibGUoe1xyXG4gIHByb3ZpZGVkSW46ICdyb290J1xyXG59KVxyXG5leHBvcnQgY2xhc3MgV2VjaGF0SnNzZGtTZXJ2aWNlIHtcclxuXHJcbiAgaXNJbml0OmJvb2xlYW4gPSBmYWxzZTtcclxuICBpc1dlY2hhdDpib29sZWFuID0gZmFsc2U7IC8vIOacjeWKoeWIneWni+WMluWNs+WIpOaWreaYr+WQpuW+ruS/oea1j+iniOWZqFxyXG4gIHd4OmFueVxyXG4gIGNvbXBhbnk6c3RyaW5nXHJcbiAgd2VjaGF0QWNjb3VudElkOnN0cmluZyA9IGxvY2FsU3RvcmFnZS5nZXRJdGVtKFwiV0VDSEFUX0FQUF9JRFwiKSAvLyDlvq7kv6HlhazkvJflj7dJRFxyXG4gIG9wZW5pZDpzdHJpbmdcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIGh0dHA6SHR0cENsaWVudCxcclxuICAgIHByaXZhdGUgYXV0aFNlcnY6IEF1dGhTZXJ2aWNlLFxyXG4gICAgKSB7IFxyXG4gICAgICAvLyDmo4DmtYvlvq7kv6Hnjq/looNcclxuICAgICAgbGV0IHVhID0gbmF2aWdhdG9yLnVzZXJBZ2VudC50b0xvd2VyQ2FzZSgpO1xyXG4gICAgICBsZXQgaXNXZWNoYXQgPSB1YS5pbmRleE9mKCdtaWNyb21lc3NlbmdlcicpICE9PSAtMTtcclxuICAgICAgdGhpcy5pc1dlY2hhdCA9IGlzV2VjaGF0XHJcbiAgICAgIC8vIOWIneWni+WMluW4kOWll1xyXG4gICAgICB0aGlzLmNvbXBhbnkgPSB0aGlzLmF1dGhTZXJ2LmNvbXBhbnkgfHwgbG9jYWxTdG9yYWdlLmdldEl0ZW0oXCJjb21wYW55XCIpO1xyXG4gICAgICB0aGlzLndlY2hhdEFjY291bnRJZCA9IHRoaXMuYXV0aFNlcnYuYXBwSWQgfHwgbG9jYWxTdG9yYWdlLmdldEl0ZW0oXCJXRUNIQVRfQVBQX0lEXCIpXHJcbiAgfVxyXG4gIC8qKlxyXG4gICAqIOmFjee9ruW9k+WJjemhtemdouWIhuS6q+WPguaVsFxyXG4gICAqL1xyXG5cclxuICBhc3luYyBzZXRDdXJyZW50UGFnZVNoYXJlSW5mbyhzaGFyZUluZm89e1xyXG4gICAgdGl0bGU6ICfpo57noIFBSScsIC8vIOWIhuS6q+agh+mimFxyXG4gICAgZGVzYzogJ+ino+aUvuWIm+aEj+W8lemihuacquadpXzlm73pmYXliY3msr/nmoRBSUdD5bmz5Y+wJywgLy8g5YiG5Lqr5o+P6L+wXHJcbiAgICBsaW5rOiBsb2NhdGlvbi5ocmVmLCAvLyDliIbkuqvpk77mjqXvvIzor6Xpk77mjqXln5/lkI3miJbot6/lvoTlv4XpobvkuI7lvZPliY3pobXpnaLlr7nlupTnmoTlhazkvJflj7dKU+WuieWFqOWfn+WQjeS4gOiHtFxyXG4gICAgdHlwZTogJ2xpbmsnLCAvL+WIhuS6q+exu+WeiyxtdXNpY+OAgXZpZGVv5oiWbGlua++8jOS4jeWhq+m7mOiupOS4umxpbmtcclxuICAgIGltZ1VybDogJ2h0dHBzOi8vZmlsZS1jbG91ZC5mbW9kZS5jbi9FNEtwR3ZURXRvLzIwMjMwODIyLzNta2Y0MTAzMzYyMzI3NS5wbmcnLCAvLyDliIbkuqvlm77moIdcclxuICAgIHN1Y2Nlc3M6ICgpID0+IHtcclxuICAgICAgLy8g6K6+572u5oiQ5YqfXHJcbiAgICAgIGNvbnNvbGUubG9nKCfliIbkuqvmiJDlip8nKTtcclxuICAgIH0sXHJcbiAgICBlcnJvcjogKCkgPT4ge1xyXG4gICAgICBjb25zb2xlLmxvZygn5YiG5Lqr5aSx6LSlJyk7XHJcbiAgICB9LFxyXG4gICAgY2FuY2VsOiAoKSA9PiB7XHJcbiAgICAgIGNvbnNvbGUubG9nKCflj5bmtojliIbkuqsnKTtcclxuICAgIH1cclxuICB9KXtcclxuICAgIGNvbnN0IHNpZ25QYWNrYWdlID0gYXdhaXQgdGhpcy5nZXRXWFNpZ25QYWNrYWdlSW5XZWNoYXQoKVxyXG5cclxuICAgIHd4LmNvbmZpZyh7XHJcbiAgICAgIGRlYnVnOiBmYWxzZSwgLy8g5byA5ZCv6LCD6K+V5qih5byPXHJcbiAgICAgIGFwcElkOiBzaWduUGFja2FnZS5hcHBpZCwgLy8g5b+F5aGr77yM5YWs5LyX5Y+355qE5ZSv5LiA5qCH6K+GXHJcbiAgICAgIHRpbWVzdGFtcDogc2lnblBhY2thZ2UudGltZXN0YW1wLCAvLyDlv4XloavvvIznlJ/miJDnrb7lkI3nmoTml7bpl7TmiLNcclxuICAgICAgbm9uY2VTdHI6IHNpZ25QYWNrYWdlLm5vbmNlU3RyLCAvLyDlv4XloavvvIznlJ/miJDnrb7lkI3nmoTpmo/mnLrkuLJcclxuICAgICAgc2lnbmF0dXJlOiBzaWduUGFja2FnZS5zaWduYXR1cmUsIC8vIOW/heWhq++8jOetvuWQje+8jOingemZhOW9lTFcclxuICAgICAganNBcGlMaXN0OiBbXHJcbiAgICAgICAgXCJjaG9vc2VXWFBheVwiLCAvLyBKU0FQSeW+ruS/oeaUr+S7mFxyXG4gICAgICAgICdvbk1lbnVTaGFyZVRpbWVsaW5lJywgLy/liIbkuqvliLDlvq7kv6HmnIvlj4vlnIhcclxuICAgICAgICAnb25NZW51U2hhcmVBcHBNZXNzYWdlJywgLy/liIbkuqvnu5nlvq7kv6HmnIvlj4tcclxuICAgICAgICAnb25NZW51U2hhcmVRUScsIC8v5YiG5Lqr5YiwUVFcclxuICAgICAgICAnb25NZW51U2hhcmVRWm9uZScsIC8v5YiG5Lqr5YiwUVHnqbrpl7RcclxuICAgICAgICAndXBkYXRlQXBwTWVzc2FnZVNoYXJlRGF0YScsIC8v5YiG5Lqr5Yiw5b6u5L+h5Y+KUVHvvIjmlrDmjqXlj6PvvIlcclxuICAgICAgICAndXBkYXRlVGltZWxpbmVTaGFyZURhdGEnIC8v5YiG5Lqr5Yiw5pyL5Y+L5ZyI4oCd5Y+K4oCc5YiG5Lqr5YiwUVHnqbrpl7TvvIjmlrDmjqXlj6NcclxuICAgICAgXSwgLy8g5b+F5aGr77yM6ZyA6KaB5L2/55So55qESlPmjqXlj6PliJfooajvvIzmiYDmnIlKU+aOpeWPo+WIl+ihqOingemZhOW9lTJcclxuICAgIH0pO1xyXG4gICAgXHJcbiAgICBpZihzaGFyZUluZm8/LnR5cGU9PVwibGlua1wiKXtcclxuICAgICAgLy8g5Yik5pat5piv5ZCm5pyJ5Y+C5pWwXHJcbiAgICAgIHNoYXJlSW5mby5saW5rID0gdGhpcy5nZXRJbnZpdGVVcmwoc2hhcmVJbmZvLmxpbmspXHJcbiAgICB9XHJcblxyXG4gICAgd3gucmVhZHkoKCkgPT4ge1xyXG4gICAgICB3eC51cGRhdGVBcHBNZXNzYWdlU2hhcmVEYXRhKHNoYXJlSW5mbyk7IC8v5YiG5Lqr5Yiw5b6u5L+h5aW95Y+L5oiW6ICFcXHlpb3lj4tcclxuICAgICAgd3gudXBkYXRlVGltZWxpbmVTaGFyZURhdGEoc2hhcmVJbmZvKTsgLy/liIbkuqvliLDmnIvlj4vlnIjmiJbogIVxceepuumXtFxyXG4gICAgfSk7XHJcbiAgICB3eC5lcnJvcigoKSA9PiB7fSk7XHJcbiAgfVxyXG4gIGdldEludml0ZVVybCh1cmwpe1xyXG4gICAgbGV0IHUgPSBuZXcgVVJMKHVybCk7XHJcbiAgICBsZXQgaWQgPSBQYXJzZS5Vc2VyPy5jdXJyZW50KCk/LmlkXHJcbiAgICBpZihpZCl7XHJcbiAgICAgIHUuc2VhcmNoUGFyYW1zLnNldChcImludml0ZVwiLGlkKVxyXG4gICAgfVxyXG4gICAgcmV0dXJuIHUuaHJlZlxyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICog5b2T5YmN6aG16Z2i6I635Y+W5b6u5L+h5o6I5p2D562+5ZCNXHJcbiAgICovXHJcbiAgLyog6I635Y+W5b6u5L+h562+5ZCNICovXHJcbiAgZ2V0V1hTaWduUGFja2FnZUluV2VjaGF0KCk6UHJvbWlzZTxhbnk+e1xyXG4gICAgbGV0IHBhcmFtcyA9IHtcclxuICAgICAgY29tcGFueTogdGhpcy5jb21wYW55LFxyXG4gICAgICAvLyBocmVmOiBlbmNvZGVVUklDb21wb25lbnQobG9jYXRpb24uaHJlZi5zcGxpdChcIj9cIilbMF0pLFxyXG4gICAgICBocmVmOiBlbmNvZGVVUklDb21wb25lbnQobG9jYXRpb24uaHJlZiksXHJcbiAgICB9O1xyXG4gICAgcmV0dXJuIG5ldyBQcm9taXNlKHJlc29sdmU9PntcclxuICAgICAgdGhpcy5odHRwXHJcbiAgICAgIC5wb3N0KGBodHRwczovL3NlcnZlci5mbW9kZS5jbi9hcGkvd2VjaGF0L2dldGNvbmZpZ2AsIHBhcmFtcylcclxuICAgICAgLnN1YnNjcmliZSgocmVzcG9uc2UpID0+IHtcclxuICAgICAgICAvLyDov5Tlm57nmoTnrb7lkI3kv6Hmga9cclxuICAgICAgICBsZXQgcmVzOiBhbnkgPSByZXNwb25zZTtcclxuICAgICAgICBsZXQgc2lnblBhY2thZ2UgPSByZXMuZGF0YTtcclxuICAgICAgICByZXNvbHZlKHNpZ25QYWNrYWdlKVxyXG4gICAgICB9KTtcclxuICAgIH0pXHJcbiAgfVxyXG5cclxuICAvKiog5b6u5L+h55So5oi35Yid5aeL5YyWIFxyXG4gICAqIEBkZXNjIOS4uuW9k+WJjeW3sueZu+W9leeUqOaIt++8jOiOt+WPluW+ruS/oeaOiOadg29wZW5pZOS/oeaBr1xyXG4gICovXHJcbiAgLyog5aaC5p6c5piv5b6u5L+h5YaF572u5rWP6KeI5Zmo77yM5Yid5aeL5YyW55So5oi3b3Blbmlk5L+h5oGv77yM6I635Y+W55m75b2VY29kZSAqL1xyXG4gIGFzeW5jIGluaXRVc2VyT3BlbmlkKCkge1xyXG4gICAgYXdhaXQgdGhpcy5pbml0KClcclxuICAgIGlmKCF0aGlzLndlY2hhdEFjY291bnRJZCkgcmV0dXJuIGFsZXJ0KFwiYXBwSWTkuI3lrZjlnKjvvIzor7flhYjphY3nva5cIilcclxuICAgIGxldCBjb2RlID0gdGhpcy5nZXRRdWVyeVN0cmluZ0J5TmFtZShcImNvZGVcIik7XHJcbiAgICBsZXQgb3BlbmlkID0gbG9jYWxTdG9yYWdlLmdldEl0ZW0oXCJvcGVuaWRcIik7XHJcbiAgICBpZiAoIW9wZW5pZCkge1xyXG4gICAgICBpZighUGFyc2UuVXNlci5jdXJyZW50KCkpIHJldHVyblxyXG4gICAgICBvcGVuaWQgPSBQYXJzZT8uVXNlcj8uY3VycmVudCgpPy5nZXQoXCJ3ZWNoYXRcIik/Llt0aGlzLndlY2hhdEFjY291bnRJZF0/Lm9wZW5pZDtcclxuICAgICAgaWYgKHRoaXMuaXNXZWNoYXQgJiYgIW9wZW5pZCkgeyAvLyDkuI3lrZjlnKjliJnojrflj5ZcclxuICAgICAgICBsZXQgcGF0aG5hbWUgPSB3aW5kb3cubG9jYXRpb24ucGF0aG5hbWVcclxuICAgICAgICBpZiAoIWNvZGUpIHtcclxuICAgICAgICAgIHRoaXMuYXV0aFdlY2hhdChwYXRobmFtZSk7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIGF3YWl0IHRoaXMuZ2V0d2VjaGF0KGNvZGUscGF0aG5hbWUpO1xyXG4gICAgICAgIH1cclxuICAgICAgfWVsc2V7XHJcbiAgICAgICAgdGhpcy5vcGVuaWQgPSBvcGVuaWQgLy8g5a2Y5Zyo5YiZ5Yqg6L29XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgYXV0aFdlY2hhdCh1cmw6IHN0cmluZyA9IHdpbmRvdy5sb2NhdGlvbi5wYXRobmFtZSkge1xyXG4gICAgaWYgKCFsb2NhbFN0b3JhZ2UuZ2V0SXRlbShcIm9wZW5pZFwiKSkge1xyXG4gICAgICBsZXQgb3JpZ2luID0gd2luZG93LmxvY2F0aW9uLm9yaWdpbjtcclxuICAgICAgbGV0IFJFRElSRUNUX1VSSSA9IG9yaWdpbiArIHVybDtcclxuICAgICAgUkVESVJFQ1RfVVJJID0gZW5jb2RlVVJJQ29tcG9uZW50KFJFRElSRUNUX1VSSSk7XHJcbiAgICAgIC8vIGNvbnNvbGUubG9nKFJFRElSRUNUX1VSSSk7XHJcbiAgICAgIC8vIGNvbnNvbGUubG9nKFxyXG4gICAgICAvLyAgIFwiaHR0cHM6Ly9vcGVuLndlaXhpbi5xcS5jb20vY29ubmVjdC9vYXV0aDIvYXV0aG9yaXplP2FwcGlkPVwiICtcclxuICAgICAgLy8gICAgIHRoaXMud2VjaGF0QWNjb3VudElkICtcclxuICAgICAgLy8gICAgIFwiJnJlZGlyZWN0X3VyaT1cIiArXHJcbiAgICAgIC8vICAgICBSRURJUkVDVF9VUkkgK1xyXG4gICAgICAvLyAgICAgXCImcmVzcG9uc2VfdHlwZT1jb2RlJnNjb3BlPXNuc2FwaV9iYXNlJnN0YXRlPVNUQVRFI3dlY2hhdF9yZWRpcmVjdFwiXHJcbiAgICAgIC8vICk7XHJcbiAgICAgIHdpbmRvdy5sb2NhdGlvbi5ocmVmID1cclxuICAgICAgICBcImh0dHBzOi8vb3Blbi53ZWl4aW4ucXEuY29tL2Nvbm5lY3Qvb2F1dGgyL2F1dGhvcml6ZT9hcHBpZD1cIiArXHJcbiAgICAgICAgdGhpcy53ZWNoYXRBY2NvdW50SWQgK1xyXG4gICAgICAgIFwiJnJlZGlyZWN0X3VyaT1cIiArXHJcbiAgICAgICAgUkVESVJFQ1RfVVJJICtcclxuICAgICAgICBcIiZyZXNwb25zZV90eXBlPWNvZGUmc2NvcGU9c25zYXBpX3VzZXJpbmZvJnN0YXRlPVNUQVRFI3dlY2hhdF9yZWRpcmVjdFwiO1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcbiAgfVxyXG4gIC8v5qC55o2uUXVlcnlTdHJpbmflj4LmlbDlkI3np7Dojrflj5blgLxcclxuICBnZXRRdWVyeVN0cmluZ0J5TmFtZShuYW1lOiBzdHJpbmcpIHtcclxuICAgIGxldCByZXN1bHQgPSBsb2NhdGlvbi5zZWFyY2gubWF0Y2goXHJcbiAgICAgIG5ldyBSZWdFeHAoXCJbPyZdXCIgKyBuYW1lICsgXCI9KFteJl0rKVwiLCBcImlcIilcclxuICAgICk7XHJcbiAgICBpZiAocmVzdWx0ID09IG51bGwgfHwgcmVzdWx0Lmxlbmd0aCA8IDEpIHtcclxuICAgICAgcmV0dXJuIFwiXCI7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gcmVzdWx0WzFdO1xyXG4gIH1cclxuICBhc3luYyBnZXR3ZWNoYXQoXHJcbiAgICBjb2RlOiBzdHJpbmcsXHJcbiAgICB1cmw6IHN0cmluZyA9IFwiL2FjY291bnQvYmlsbGluZ1wiXHJcbiAgKTogUHJvbWlzZTxib29sZWFuPiB7XHJcbiAgICByZXR1cm4gbmV3IFByb21pc2UoYXN5bmMgKHJlc29sdmUsIHJlamVjdCkgPT4ge1xyXG4gICAgICB0aGlzLmh0dHBcclxuICAgICAgICAucG9zdChgaHR0cHM6Ly9zZXJ2ZXIuZm1vZGUuY24vYXBpL3dlY2hhdC9nZXRfd3hgLCB7XHJcbiAgICAgICAgICBjb21wYW55OiB0aGlzLmNvbXBhbnksXHJcbiAgICAgICAgICBjb2RlOiBjb2RlLFxyXG4gICAgICAgIH0pXHJcbiAgICAgICAgLnN1YnNjcmliZShcclxuICAgICAgICAgIGFzeW5jIChyZXM6IGFueSkgPT4ge1xyXG4gICAgICAgICAgICBjb25zb2xlLmxvZyhyZXMpO1xyXG4gICAgICAgICAgICBpZiAocmVzICYmIHJlcy5jb2RlID09IDIwMCAmJiByZXMuZGF0YS5vcGVuaWQpIHtcclxuICAgICAgICAgICAgICBsZXQgb3BlbmlkID0gcmVzLmRhdGEub3BlbmlkO1xyXG4gICAgICAgICAgICAgIC8vIGxvY2FsU3RvcmFnZS5zZXRJdGVtKCdhdXRoRGF0YScsIEpTT04uc3RyaW5naWZ5KHJlcy5kYXRhKSlcclxuICAgICAgICAgICAgICBsb2NhbFN0b3JhZ2Uuc2V0SXRlbShcIm9wZW5pZFwiLCBvcGVuaWQpO1xyXG4gICAgICAgICAgICAgIGxvY2FsU3RvcmFnZS5yZW1vdmVJdGVtKFwiY29kZVwiKTtcclxuICAgICAgICAgICAgICBsZXQgdXNlcldlY2hhdCA9IHt9XHJcbiAgICAgICAgICAgICAgdXNlcldlY2hhdFt0aGlzLndlY2hhdEFjY291bnRJZF0gPSB7XCJvcGVuaWRcIjogb3BlbmlkfVxyXG4gICAgICAgICAgICAgIFBhcnNlLlVzZXIuY3VycmVudCgpLnNldChcIndlY2hhdFwiLCB1c2VyV2VjaGF0KTtcclxuICAgICAgICAgICAgICBhd2FpdCBQYXJzZS5Vc2VyLmN1cnJlbnQoKS5zYXZlKCk7XHJcbiAgICAgICAgICAgICAgcmVzb2x2ZSh0cnVlKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfSxcclxuICAgICAgICAgIGFzeW5jIChlcnIpID0+IHtcclxuICAgICAgICAgICAgY29uc29sZS5sb2coXCJFcnJvciB1cGRhdGluZyBpdGVtc1wiLCBlcnIpO1xyXG4gICAgICAgICAgICB0aGlzLmF1dGhXZWNoYXQodXJsKTtcclxuICAgICAgICAgICAgcmVqZWN0KGZhbHNlKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICApO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICAvKiog5b6u5L+h546v5aKD5Yid5aeL5YyWICovXHJcbiAgaW5pdCgpOlByb21pc2U8Ym9vbGVhbj57XHJcbiAgICByZXR1cm4gbmV3IFByb21pc2UocmVzb2x2ZT0+e1xyXG4gICAgICAgIGlmKCF0aGlzLmlzV2VjaGF0KSByZXNvbHZlKGZhbHNlKSAvLyDpnZ7lvq7kv6Hnjq/looPml6DpnIDliqDovb1cclxuICAgICAgICBpZih0aGlzLmlzSW5pdCkgcmVzb2x2ZSh0cnVlKSAvLyB0c+WHveaVsCDlt7LliJ3lp4vljJbml6DpnIDph43lpI3liqDovb1cclxuICAgICAgICBpZih3eCkgcmVzb2x2ZSh0cnVlKSAvLyBpbmRleC5odG1sIOW3suWKoOi9veaXoOmcgOmHjeWkjeWKoOi9vVxyXG4gICAgICAgIC8vIOiwg+eUqOWHveaVsOWKoOi9veaMh+WumuiEmuacrOaWh+S7tlxyXG4gICAgICAgIHRoaXMubG9hZFNjcmlwdCgnaHR0cHM6Ly9yZXMud3gucXEuY29tL29wZW4vanMvandlaXhpbi0xLjYuMC5qcycsICgpID0+IHtcclxuICAgICAgICAgIC8vIOWcqOiEmuacrOWKoOi9veWujOaIkOWQjuaJp+ihjOeahOaTjeS9nFxyXG4gICAgICAgICAgdGhpcy5pc0luaXQgPSB0cnVlO1xyXG4gICAgICAgICAgdGhpcy53eCA9IHd4O1xyXG4gICAgICAgICAgLy8g5Zyo6L+Z6YeM5Y+v5Lul5L2/55So5Yqg6L2955qE6ISa5pysXHJcbiAgICAgICAgICByZXNvbHZlKHRydWUpXHJcbiAgICAgICAgfSwoKT0+e1xyXG4gICAgICAgICAgcmVzb2x2ZShmYWxzZSlcclxuICAgICAgICB9KTtcclxuICAgICAgfSlcclxuICB9XHJcbiAgbG9hZFNjcmlwdCh1cmwsIGNhbGxiYWNrLGVyckNhbGxiYWNrKSB7XHJcbiAgICB2YXIgc2NyaXB0ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnc2NyaXB0Jyk7XHJcbiAgICBzY3JpcHQuc3JjID0gdXJsO1xyXG4gICAgLy8g6ISa5pys5Yqg6L295a6M5oiQ5ZCO55qE5Zue6LCD5Ye95pWwXHJcbiAgICBzY3JpcHQub25sb2FkID0gKCkgPT4ge1xyXG4gICAgICBpZiAoY2FsbGJhY2spIHtcclxuICAgICAgICBjYWxsYmFjaygpO1xyXG4gICAgICB9XHJcbiAgICB9O1xyXG4gICAgc2NyaXB0Lm9uZXJyb3IgPSAoKT0+e1xyXG4gICAgICBpZihlcnJDYWxsYmFjayl7XHJcbiAgICAgICAgZXJyQ2FsbGJhY2soKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgLy8g5bCG6ISa5pys5re75Yqg5Yiw6aG16Z2i5LitXHJcbiAgICBkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKHNjcmlwdCk7XHJcbiAgfVxyXG4gIFxyXG59XHJcbiJdfQ==
8
+ import{HttpClient}from"@angular/common/http";import{Injectable}from"@angular/core";import{AuthService}from"../../user/login/auth.service";import{FmodeParse}from"@fmode/parse";import*as i0 from"@angular/core";import*as i1 from"@angular/common/http";import*as i2 from"../../user/login/auth.service";const Parse=FmodeParse.with("nova");export class WechatJssdkService{constructor(e,t){this.http=e,this.authServ=t,this.isInit=!1,this.isWechat=!1,this.wechatAccountId=localStorage.getItem("WECHAT_APP_ID");let a=-1!==navigator.userAgent.toLowerCase().indexOf("micromessenger");this.isWechat=a,this.company=this.authServ.company||localStorage.getItem("company"),this.wechatAccountId=this.authServ.appId||localStorage.getItem("WECHAT_APP_ID")}async setCurrentPageShareInfo(e={title:"飞码AI",desc:"解放创意引领未来|国际前沿的AIGC平台",link:location.href,type:"link",imgUrl:"https://file-cloud.fmode.cn/E4KpGvTEto/20230822/3mkf41033623275.png",success:()=>{console.log("分享成功")},error:()=>{console.log("分享失败")},cancel:()=>{console.log("取消分享")}}){const t=await this.getWXSignPackageInWechat();wx.config({debug:!1,appId:t.appid,timestamp:t.timestamp,nonceStr:t.nonceStr,signature:t.signature,jsApiList:["chooseWXPay","onMenuShareTimeline","onMenuShareAppMessage","onMenuShareQQ","onMenuShareQZone","updateAppMessageShareData","updateTimelineShareData"]}),"link"==e?.type&&(e.link=this.getInviteUrl(e.link)),wx.ready((()=>{wx.updateAppMessageShareData(e),wx.updateTimelineShareData(e)})),wx.error((()=>{}))}getInviteUrl(e){let t=new URL(e),a=Parse.User?.current()?.id;return a&&t.searchParams.set("invite",a),t.href}getWXSignPackageInWechat(){let e={company:this.company,href:encodeURIComponent(location.href)};return new Promise((t=>{this.http.post("https://server.fmode.cn/api/wechat/getconfig",e).subscribe((e=>{let a=e.data;t(a)}))}))}async initUserOpenid(){if(await this.init(),!this.wechatAccountId)return alert("appId不存在,请先配置");let e=this.getQueryStringByName("code"),t=localStorage.getItem("openid");if(!t){if(!Parse.User.current())return;if(t=Parse?.User?.current()?.get("wechat")?.[this.wechatAccountId]?.openid,this.isWechat&&!t){let t=window.location.pathname;e?await this.getwechat(e,t):this.authWechat(t)}else this.openid=t}}authWechat(e=window.location.pathname){if(!localStorage.getItem("openid")){let t=window.location.origin+e;return t=encodeURIComponent(t),void(window.location.href="https://open.weixin.qq.com/connect/oauth2/authorize?appid="+this.wechatAccountId+"&redirect_uri="+t+"&response_type=code&scope=snsapi_userinfo&state=STATE#wechat_redirect")}}getQueryStringByName(e){let t=location.search.match(new RegExp("[?&]"+e+"=([^&]+)","i"));return null==t||t.length<1?"":t[1]}async getwechat(e,t="/account/billing"){return new Promise((async(a,i)=>{this.http.post("https://server.fmode.cn/api/wechat/get_wx",{company:this.company,code:e}).subscribe((async e=>{if(console.log(e),e&&200==e.code&&e.data.openid){let t=e.data.openid;localStorage.setItem("openid",t),localStorage.removeItem("code");let i={};i[this.wechatAccountId]={openid:t},Parse.User.current().set("wechat",i),await Parse.User.current().save(),a(!0)}}),(async e=>{console.log("Error updating items",e),this.authWechat(t),i(!1)}))}))}init(){return new Promise((e=>{this.isWechat||e(!1),this.isInit&&e(!0),wx&&e(!0),this.loadScript("https://res.wx.qq.com/open/js/jweixin-1.6.0.js",(()=>{this.isInit=!0,this.wx=wx,e(!0)}),(()=>{e(!1)}))}))}loadScript(e,t,a){var i=document.createElement("script");i.src=e,i.onload=()=>{t&&t()},i.onerror=()=>{a&&a()},document.body.appendChild(i)}static{this.ɵfac=i0.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"17.3.12",ngImport:i0,type:WechatJssdkService,deps:[{token:i1.HttpClient},{token:i2.AuthService}],target:i0.ɵɵFactoryTarget.Injectable})}static{this.ɵprov=i0.ɵɵngDeclareInjectable({minVersion:"12.0.0",version:"17.3.12",ngImport:i0,type:WechatJssdkService,providedIn:"root"})}}i0.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"17.3.12",ngImport:i0,type:WechatJssdkService,decorators:[{type:Injectable,args:[{providedIn:"root"}]}],ctorParameters:()=>[{type:i1.HttpClient},{type:i2.AuthService}]});
9
+ var MODULE_PATH_NEED = `6K+l5paH5Lu25piv5pys6aG555uu55qE5LiA6YOo5YiGIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBDb21wb25lbnRzIGluIEZtb2RlIEluYy4KICAgIOeJiOadg+aJgOaciSDCqSDmnKrmnaXpo57pqawgwqkg5rGf6KW/6ISR5o6n56eR5oqA5pyJ6ZmQ5YWs5Y+4IENvcHlyaWdodCDCqSBGbW9kZSBUZWNobm9sb2d5IENvLiwgTHRkLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICDkuKXnpoHlnKjmnKrnu4/mjojmnYPnmoTmg4XlhrXkuIvvvIzpgJrov4fku7vkvZXlqpLku4vlpI3liLbmraTmlofku7YgVW5hdXRob3JpemVkIGNvcHlpbmcgb2YgdGhpcyBmaWxlLCB2aWEgYW55IG1lZGl1bSBpcyBzdHJpY3RseSBwcm9oaWJpdGVkCiAgICDor6Xmlofku7bmmK/kuJPmnInnmoTmnLrlr4bmlofku7YgUHJvcHJpZXRhcnkgYW5kIGNvbmZpZGVudGlhbAogICAKICAgIENvcHlyaWdodCAyMDIxLW5vdyBGbW9kZSBJbmMuIHN1cHBvcnRAZm1vZGUuY24uIDE4NjA3MDA3MDczLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCByaWdodHMgcmVzZXJ2ZWQuCgogICAgUEFUSDovaG9tZS9yeWFuL3dvcmtzcGFjZS9ub3ZhL25vdmEtYWRtaW4vZGlzdC9mbW9kZS1uZy9lc20yMDIyL2xpYi9zb2NpYWwvd2VjaGF0L3dlY2hhdC1qc3Nkay5zZXJ2aWNlLm1qcw==`
10
+
@@ -1,59 +1,10 @@
1
- import { CommonModule } from '@angular/common';
2
- import { Component } from '@angular/core';
3
- import { FormsModule, ReactiveFormsModule } from '@angular/forms';
4
- import { IonicModule } from '@ionic/angular';
5
- import { HwobsService } from '../service-hwobs/hwobs.service';
6
- import * as i0 from "@angular/core";
7
- import * as i1 from "../service-hwobs/hwobs.service";
8
- import * as i2 from "@angular/common";
9
- import * as i3 from "@ionic/angular";
10
- export class HwobsManagerComponent {
11
- openFile(file) {
12
- console.log('Opening file:', file);
13
- // Add your logic to open the file details here
14
- }
15
- openDir(dir, type = "pre") {
16
- if (dir) {
17
- this.prefix = dir.Prefix;
18
- this.listDir(dir.Prefix);
19
- }
20
- else {
21
- if (type == "pre") {
22
- let list = this.prefix.split("/");
23
- if (list.length > 1) {
24
- let prefix = list.splice(0, list.length - 1).join("/");
25
- console.log(prefix);
26
- this.prefix = prefix;
27
- this.listDir(prefix);
28
- }
29
- }
30
- }
31
- }
32
- showName(name) {
33
- return name.replaceAll(this.prefix, "");
34
- }
35
- constructor(hwobs) {
36
- this.hwobs = hwobs;
37
- this.dirs = [];
38
- this.files = [];
39
- this.prefix = "storage/";
40
- this.listDir(this.prefix);
41
- }
42
- async listDir(prefix) {
43
- let { dirs, files } = await this.hwobs.listDir(prefix);
44
- this.dirs = dirs;
45
- this.files = files;
46
- }
47
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: HwobsManagerComponent, deps: [{ token: i1.HwobsService }], target: i0.ɵɵFactoryTarget.Component }); }
48
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: HwobsManagerComponent, isStandalone: true, selector: "fm-storage-hwobs-manager", ngImport: i0, template: "<ion-header>\r\n <ion-toolbar>\r\n <ion-title>\r\n File Manager\r\n </ion-title>\r\n </ion-toolbar>\r\n </ion-header>\r\n \r\n <ion-content>\r\n <ion-list>\r\n <ion-item (click)=\"openDir(null,'pre')\">\r\n <ion-icon [name]=\"'folder'\" slot=\"start\"></ion-icon>\r\n <ion-label>../</ion-label>\r\n </ion-item>\r\n <ion-item *ngFor=\"let item of dirs\" (click)=\"openDir(item)\">\r\n <ion-icon [name]=\"'folder'\" slot=\"start\"></ion-icon>\r\n <ion-label>{{ showName(item.Prefix) }}</ion-label>\r\n </ion-item>\r\n <ion-item *ngFor=\"let item of files\" (click)=\"openFile(item)\">\r\n <ion-icon [name]=\"'document'\" slot=\"start\"></ion-icon>\r\n <ion-label>{{ showName(item.Key) }}</ion-label>\r\n </ion-item>\r\n </ion-list>\r\n </ion-content>", styles: ["ion-list ion-item ion-icon{font-size:24px;margin-right:8px}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "ngmodule", type: FormsModule }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "ngmodule", type: IonicModule }, { kind: "component", type: i3.IonContent, selector: "ion-content", inputs: ["color", "fixedSlotPlacement", "forceOverscroll", "fullscreen", "scrollEvents", "scrollX", "scrollY"] }, { kind: "component", type: i3.IonHeader, selector: "ion-header", inputs: ["collapse", "mode", "translucent"] }, { kind: "component", type: i3.IonIcon, selector: "ion-icon", inputs: ["color", "flipRtl", "icon", "ios", "lazy", "md", "mode", "name", "sanitize", "size", "src"] }, { kind: "component", type: i3.IonItem, selector: "ion-item", inputs: ["button", "color", "detail", "detailIcon", "disabled", "download", "href", "lines", "mode", "rel", "routerAnimation", "routerDirection", "target", "type"] }, { kind: "component", type: i3.IonLabel, selector: "ion-label", inputs: ["color", "mode", "position"] }, { kind: "component", type: i3.IonList, selector: "ion-list", inputs: ["inset", "lines", "mode"] }, { kind: "component", type: i3.IonTitle, selector: "ion-title", inputs: ["color", "size"] }, { kind: "component", type: i3.IonToolbar, selector: "ion-toolbar", inputs: ["color", "mode"] }] }); }
49
- }
50
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: HwobsManagerComponent, decorators: [{
51
- type: Component,
52
- args: [{ standalone: true, imports: [
53
- CommonModule,
54
- FormsModule,
55
- ReactiveFormsModule,
56
- IonicModule
57
- ], selector: 'fm-storage-hwobs-manager', template: "<ion-header>\r\n <ion-toolbar>\r\n <ion-title>\r\n File Manager\r\n </ion-title>\r\n </ion-toolbar>\r\n </ion-header>\r\n \r\n <ion-content>\r\n <ion-list>\r\n <ion-item (click)=\"openDir(null,'pre')\">\r\n <ion-icon [name]=\"'folder'\" slot=\"start\"></ion-icon>\r\n <ion-label>../</ion-label>\r\n </ion-item>\r\n <ion-item *ngFor=\"let item of dirs\" (click)=\"openDir(item)\">\r\n <ion-icon [name]=\"'folder'\" slot=\"start\"></ion-icon>\r\n <ion-label>{{ showName(item.Prefix) }}</ion-label>\r\n </ion-item>\r\n <ion-item *ngFor=\"let item of files\" (click)=\"openFile(item)\">\r\n <ion-icon [name]=\"'document'\" slot=\"start\"></ion-icon>\r\n <ion-label>{{ showName(item.Key) }}</ion-label>\r\n </ion-item>\r\n </ion-list>\r\n </ion-content>", styles: ["ion-list ion-item ion-icon{font-size:24px;margin-right:8px}\n"] }]
58
- }], ctorParameters: () => [{ type: i1.HwobsService }] });
59
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHdvYnMtbWFuYWdlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mbW9kZS1uZy9zcmMvbGliL3N0b3JhZ2UvY29tcC1od29icy1tYW5hZ2VyL2h3b2JzLW1hbmFnZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZm1vZGUtbmcvc3JjL2xpYi9zdG9yYWdlL2NvbXAtaHdvYnMtbWFuYWdlci9od29icy1tYW5hZ2VyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzFDLE9BQU8sRUFBRSxXQUFXLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNsRSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0MsT0FBTyxFQUF1QixZQUFZLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQzs7Ozs7QUFjbkYsTUFBTSxPQUFPLHFCQUFxQjtJQUloQyxRQUFRLENBQUMsSUFBUztRQUNoQixPQUFPLENBQUMsR0FBRyxDQUFDLGVBQWUsRUFBRSxJQUFJLENBQUMsQ0FBQztRQUNuQywrQ0FBK0M7SUFDakQsQ0FBQztJQUNELE9BQU8sQ0FBQyxHQUFrQixFQUFDLE9BQVksS0FBSztRQUMxQyxJQUFHLEdBQUcsRUFBQyxDQUFDO1lBQ04sSUFBSSxDQUFDLE1BQU0sR0FBRyxHQUFHLENBQUMsTUFBTSxDQUFBO1lBQ3hCLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxDQUFBO1FBQzFCLENBQUM7YUFBSSxDQUFDO1lBQ0osSUFBRyxJQUFJLElBQUUsS0FBSyxFQUFDLENBQUM7Z0JBQ2QsSUFBSSxJQUFJLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUE7Z0JBQ2pDLElBQUcsSUFBSSxDQUFDLE1BQU0sR0FBQyxDQUFDLEVBQUMsQ0FBQztvQkFDaEIsSUFBSSxNQUFNLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLEVBQUMsSUFBSSxDQUFDLE1BQU0sR0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUE7b0JBQ25ELE9BQU8sQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLENBQUE7b0JBQ25CLElBQUksQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFBO29CQUNwQixJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFBO2dCQUN0QixDQUFDO1lBQ0gsQ0FBQztRQUNILENBQUM7SUFDSCxDQUFDO0lBQ0QsUUFBUSxDQUFDLElBQVc7UUFDbEIsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUMsRUFBRSxDQUFDLENBQUE7SUFDeEMsQ0FBQztJQUNELFlBQ1UsS0FBa0I7UUFBbEIsVUFBSyxHQUFMLEtBQUssQ0FBYTtRQTNCNUIsU0FBSSxHQUFlLEVBQUUsQ0FBQztRQUN0QixVQUFLLEdBQWdCLEVBQUUsQ0FBQztRQUN4QixXQUFNLEdBQVcsVUFBVSxDQUFBO1FBMkJ6QixJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQTtJQUMzQixDQUFDO0lBRUQsS0FBSyxDQUFDLE9BQU8sQ0FBQyxNQUFhO1FBQ3pCLElBQUksRUFBQyxJQUFJLEVBQUMsS0FBSyxFQUFDLEdBQUcsTUFBTSxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQTtRQUNuRCxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQTtRQUNoQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQTtJQUNwQixDQUFDOytHQXJDVSxxQkFBcUI7bUdBQXJCLHFCQUFxQixvRkNsQmxDLDIzQkF1QmdCLHNIRGRaLFlBQVksMkpBQ1osV0FBVyw4QkFDWCxtQkFBbUIsOEJBQ25CLFdBQVc7OzRGQU1GLHFCQUFxQjtrQkFaakMsU0FBUztpQ0FDRyxJQUFJLFdBQ1A7d0JBQ04sWUFBWTt3QkFDWixXQUFXO3dCQUNYLG1CQUFtQjt3QkFDbkIsV0FBVztxQkFDWixZQUNTLDBCQUEwQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IENvbXBvbmVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBGb3Jtc01vZHVsZSwgUmVhY3RpdmVGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgSW9uaWNNb2R1bGUgfSBmcm9tICdAaW9uaWMvYW5ndWxhcic7XHJcbmltcG9ydCB7IEh3b2JzRGlyLCBId29ic0ZpbGUsIEh3b2JzU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2UtaHdvYnMvaHdvYnMuc2VydmljZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzdGFuZGFsb25lOnRydWUsXHJcbiAgaW1wb3J0czpbXHJcbiAgICBDb21tb25Nb2R1bGUsXHJcbiAgICBGb3Jtc01vZHVsZSxcclxuICAgIFJlYWN0aXZlRm9ybXNNb2R1bGUsXHJcbiAgICBJb25pY01vZHVsZVxyXG4gIF0sXHJcbiAgc2VsZWN0b3I6ICdmbS1zdG9yYWdlLWh3b2JzLW1hbmFnZXInLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9od29icy1tYW5hZ2VyLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9od29icy1tYW5hZ2VyLmNvbXBvbmVudC5zY3NzJ11cclxufSlcclxuZXhwb3J0IGNsYXNzIEh3b2JzTWFuYWdlckNvbXBvbmVudCB7XHJcbiAgZGlyczogSHdvYnNEaXJbXSA9IFtdO1xyXG4gIGZpbGVzOiBId29ic0ZpbGVbXSA9IFtdO1xyXG4gIHByZWZpeDogc3RyaW5nID0gXCJzdG9yYWdlL1wiXHJcbiAgb3BlbkZpbGUoZmlsZTogYW55KSB7XHJcbiAgICBjb25zb2xlLmxvZygnT3BlbmluZyBmaWxlOicsIGZpbGUpO1xyXG4gICAgLy8gQWRkIHlvdXIgbG9naWMgdG8gb3BlbiB0aGUgZmlsZSBkZXRhaWxzIGhlcmVcclxuICB9XHJcbiAgb3BlbkRpcihkaXI/Okh3b2JzRGlyfG51bGwsdHlwZTpzdHJpbmc9XCJwcmVcIil7XHJcbiAgICBpZihkaXIpe1xyXG4gICAgICB0aGlzLnByZWZpeCA9IGRpci5QcmVmaXhcclxuICAgICAgdGhpcy5saXN0RGlyKGRpci5QcmVmaXgpXHJcbiAgICB9ZWxzZXtcclxuICAgICAgaWYodHlwZT09XCJwcmVcIil7XHJcbiAgICAgICAgbGV0IGxpc3QgPSB0aGlzLnByZWZpeC5zcGxpdChcIi9cIilcclxuICAgICAgICBpZihsaXN0Lmxlbmd0aD4xKXtcclxuICAgICAgICAgIGxldCBwcmVmaXggPSBsaXN0LnNwbGljZSgwLGxpc3QubGVuZ3RoLTEpLmpvaW4oXCIvXCIpXHJcbiAgICAgICAgICBjb25zb2xlLmxvZyhwcmVmaXgpXHJcbiAgICAgICAgICB0aGlzLnByZWZpeCA9IHByZWZpeFxyXG4gICAgICAgICAgdGhpcy5saXN0RGlyKHByZWZpeClcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgc2hvd05hbWUobmFtZTpzdHJpbmcpe1xyXG4gICAgcmV0dXJuIG5hbWUucmVwbGFjZUFsbCh0aGlzLnByZWZpeCxcIlwiKVxyXG4gIH1cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgaHdvYnM6SHdvYnNTZXJ2aWNlXHJcbiAgKXtcclxuICAgIHRoaXMubGlzdERpcih0aGlzLnByZWZpeClcclxuICB9XHJcblxyXG4gIGFzeW5jIGxpc3REaXIocHJlZml4OnN0cmluZyl7XHJcbiAgICBsZXQge2RpcnMsZmlsZXN9ID0gYXdhaXQgdGhpcy5od29icy5saXN0RGlyKHByZWZpeClcclxuICAgIHRoaXMuZGlycyA9IGRpcnNcclxuICAgIHRoaXMuZmlsZXMgPSBmaWxlc1xyXG4gIH1cclxufVxyXG4iLCI8aW9uLWhlYWRlcj5cclxuICAgIDxpb24tdG9vbGJhcj5cclxuICAgICAgPGlvbi10aXRsZT5cclxuICAgICAgICBGaWxlIE1hbmFnZXJcclxuICAgICAgPC9pb24tdGl0bGU+XHJcbiAgICA8L2lvbi10b29sYmFyPlxyXG4gIDwvaW9uLWhlYWRlcj5cclxuICBcclxuICA8aW9uLWNvbnRlbnQ+XHJcbiAgICA8aW9uLWxpc3Q+XHJcbiAgICAgICAgPGlvbi1pdGVtIChjbGljayk9XCJvcGVuRGlyKG51bGwsJ3ByZScpXCI+XHJcbiAgICAgICAgICAgIDxpb24taWNvbiBbbmFtZV09XCInZm9sZGVyJ1wiIHNsb3Q9XCJzdGFydFwiPjwvaW9uLWljb24+XHJcbiAgICAgICAgICAgIDxpb24tbGFiZWw+Li4vPC9pb24tbGFiZWw+XHJcbiAgICAgICAgPC9pb24taXRlbT5cclxuICAgICAgICA8aW9uLWl0ZW0gKm5nRm9yPVwibGV0IGl0ZW0gb2YgZGlyc1wiIChjbGljayk9XCJvcGVuRGlyKGl0ZW0pXCI+XHJcbiAgICAgICAgICAgIDxpb24taWNvbiBbbmFtZV09XCInZm9sZGVyJ1wiIHNsb3Q9XCJzdGFydFwiPjwvaW9uLWljb24+XHJcbiAgICAgICAgICAgIDxpb24tbGFiZWw+e3sgc2hvd05hbWUoaXRlbS5QcmVmaXgpIH19PC9pb24tbGFiZWw+XHJcbiAgICAgICAgPC9pb24taXRlbT5cclxuICAgICAgICA8aW9uLWl0ZW0gKm5nRm9yPVwibGV0IGl0ZW0gb2YgZmlsZXNcIiAoY2xpY2spPVwib3BlbkZpbGUoaXRlbSlcIj5cclxuICAgICAgICAgICAgPGlvbi1pY29uIFtuYW1lXT1cIidkb2N1bWVudCdcIiBzbG90PVwic3RhcnRcIj48L2lvbi1pY29uPlxyXG4gICAgICAgICAgICA8aW9uLWxhYmVsPnt7IHNob3dOYW1lKGl0ZW0uS2V5KSB9fTwvaW9uLWxhYmVsPlxyXG4gICAgICAgIDwvaW9uLWl0ZW0+XHJcbiAgICA8L2lvbi1saXN0PlxyXG4gIDwvaW9uLWNvbnRlbnQ+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/storage/comp-hwobs-manager/hwobs-manager.component.mjs
7
+ */
8
+ import{CommonModule}from"@angular/common";import{Component}from"@angular/core";import{FormsModule,ReactiveFormsModule}from"@angular/forms";import{IonicModule}from"@ionic/angular";import{HwobsService}from"../service-hwobs/hwobs.service";import*as i0 from"@angular/core";import*as i1 from"../service-hwobs/hwobs.service";import*as i2 from"@angular/common";import*as i3 from"@ionic/angular";export class HwobsManagerComponent{openFile(o){console.log("Opening file:",o)}openDir(o,n="pre"){if(o)this.prefix=o.Prefix,this.listDir(o.Prefix);else if("pre"==n){let o=this.prefix.split("/");if(o.length>1){let n=o.splice(0,o.length-1).join("/");console.log(n),this.prefix=n,this.listDir(n)}}}showName(o){return o.replaceAll(this.prefix,"")}constructor(o){this.hwobs=o,this.dirs=[],this.files=[],this.prefix="storage/",this.listDir(this.prefix)}async listDir(o){let{dirs:n,files:e}=await this.hwobs.listDir(o);this.dirs=n,this.files=e}static{this.ɵfac=i0.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"17.3.12",ngImport:i0,type:HwobsManagerComponent,deps:[{token:i1.HwobsService}],target:i0.ɵɵFactoryTarget.Component})}static{this.ɵcmp=i0.ɵɵngDeclareComponent({minVersion:"14.0.0",version:"17.3.12",type:HwobsManagerComponent,isStandalone:!0,selector:"fm-storage-hwobs-manager",ngImport:i0,template:'<ion-header>\n <ion-toolbar>\n <ion-title>\n File Manager\n </ion-title>\n </ion-toolbar>\n </ion-header>\n \n <ion-content>\n <ion-list>\n <ion-item (click)="openDir(null,\'pre\')">\n <ion-icon [name]="\'folder\'" slot="start"></ion-icon>\n <ion-label>../</ion-label>\n </ion-item>\n <ion-item *ngFor="let item of dirs" (click)="openDir(item)">\n <ion-icon [name]="\'folder\'" slot="start"></ion-icon>\n <ion-label>{{ showName(item.Prefix) }}</ion-label>\n </ion-item>\n <ion-item *ngFor="let item of files" (click)="openFile(item)">\n <ion-icon [name]="\'document\'" slot="start"></ion-icon>\n <ion-label>{{ showName(item.Key) }}</ion-label>\n </ion-item>\n </ion-list>\n </ion-content>',styles:["ion-list ion-item ion-icon{font-size:24px;margin-right:8px}\n"],dependencies:[{kind:"ngmodule",type:CommonModule},{kind:"directive",type:i2.NgForOf,selector:"[ngFor][ngForOf]",inputs:["ngForOf","ngForTrackBy","ngForTemplate"]},{kind:"ngmodule",type:FormsModule},{kind:"ngmodule",type:ReactiveFormsModule},{kind:"ngmodule",type:IonicModule},{kind:"component",type:i3.IonContent,selector:"ion-content",inputs:["color","fixedSlotPlacement","forceOverscroll","fullscreen","scrollEvents","scrollX","scrollY"]},{kind:"component",type:i3.IonHeader,selector:"ion-header",inputs:["collapse","mode","translucent"]},{kind:"component",type:i3.IonIcon,selector:"ion-icon",inputs:["color","flipRtl","icon","ios","lazy","md","mode","name","sanitize","size","src"]},{kind:"component",type:i3.IonItem,selector:"ion-item",inputs:["button","color","detail","detailIcon","disabled","download","href","lines","mode","rel","routerAnimation","routerDirection","target","type"]},{kind:"component",type:i3.IonLabel,selector:"ion-label",inputs:["color","mode","position"]},{kind:"component",type:i3.IonList,selector:"ion-list",inputs:["inset","lines","mode"]},{kind:"component",type:i3.IonTitle,selector:"ion-title",inputs:["color","size"]},{kind:"component",type:i3.IonToolbar,selector:"ion-toolbar",inputs:["color","mode"]}]})}}i0.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"17.3.12",ngImport:i0,type:HwobsManagerComponent,decorators:[{type:Component,args:[{standalone:!0,imports:[CommonModule,FormsModule,ReactiveFormsModule,IonicModule],selector:"fm-storage-hwobs-manager",template:'<ion-header>\n <ion-toolbar>\n <ion-title>\n File Manager\n </ion-title>\n </ion-toolbar>\n </ion-header>\n \n <ion-content>\n <ion-list>\n <ion-item (click)="openDir(null,\'pre\')">\n <ion-icon [name]="\'folder\'" slot="start"></ion-icon>\n <ion-label>../</ion-label>\n </ion-item>\n <ion-item *ngFor="let item of dirs" (click)="openDir(item)">\n <ion-icon [name]="\'folder\'" slot="start"></ion-icon>\n <ion-label>{{ showName(item.Prefix) }}</ion-label>\n </ion-item>\n <ion-item *ngFor="let item of files" (click)="openFile(item)">\n <ion-icon [name]="\'document\'" slot="start"></ion-icon>\n <ion-label>{{ showName(item.Key) }}</ion-label>\n </ion-item>\n </ion-list>\n </ion-content>',styles:["ion-list ion-item ion-icon{font-size:24px;margin-right:8px}\n"]}]}],ctorParameters:()=>[{type:i1.HwobsService}]});
9
+ var MODULE_PATH_NEED = `6K+l5paH5Lu25piv5pys6aG555uu55qE5LiA6YOo5YiGIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBDb21wb25lbnRzIGluIEZtb2RlIEluYy4KICAgIOeJiOadg+aJgOaciSDCqSDmnKrmnaXpo57pqawgwqkg5rGf6KW/6ISR5o6n56eR5oqA5pyJ6ZmQ5YWs5Y+4IENvcHlyaWdodCDCqSBGbW9kZSBUZWNobm9sb2d5IENvLiwgTHRkLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICDkuKXnpoHlnKjmnKrnu4/mjojmnYPnmoTmg4XlhrXkuIvvvIzpgJrov4fku7vkvZXlqpLku4vlpI3liLbmraTmlofku7YgVW5hdXRob3JpemVkIGNvcHlpbmcgb2YgdGhpcyBmaWxlLCB2aWEgYW55IG1lZGl1bSBpcyBzdHJpY3RseSBwcm9oaWJpdGVkCiAgICDor6Xmlofku7bmmK/kuJPmnInnmoTmnLrlr4bmlofku7YgUHJvcHJpZXRhcnkgYW5kIGNvbmZpZGVudGlhbAogICAKICAgIENvcHlyaWdodCAyMDIxLW5vdyBGbW9kZSBJbmMuIHN1cHBvcnRAZm1vZGUuY24uIDE4NjA3MDA3MDczLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCByaWdodHMgcmVzZXJ2ZWQuCgogICAgUEFUSDovaG9tZS9yeWFuL3dvcmtzcGFjZS9ub3ZhL25vdmEtYWRtaW4vZGlzdC9mbW9kZS1uZy9lc20yMDIyL2xpYi9zdG9yYWdlL2NvbXAtaHdvYnMtbWFuYWdlci9od29icy1tYW5hZ2VyLmNvbXBvbmVudC5tanM=`
10
+
@@ -1,5 +1,10 @@
1
- export * from "./storage.module";
2
- export * from "./service-hwobs";
3
- export * from "./comp-hwobs-manager/hwobs-manager.component";
4
- export * from "./service-upload/nova-upload.service";
5
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mbW9kZS1uZy9zcmMvbGliL3N0b3JhZ2UvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxrQkFBa0IsQ0FBQTtBQUNoQyxjQUFjLGlCQUFpQixDQUFBO0FBQy9CLGNBQWMsOENBQThDLENBQUE7QUFDNUQsY0FBYyxzQ0FBc0MsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gXCIuL3N0b3JhZ2UubW9kdWxlXCJcclxuZXhwb3J0ICogZnJvbSBcIi4vc2VydmljZS1od29ic1wiXHJcbmV4cG9ydCAqIGZyb20gXCIuL2NvbXAtaHdvYnMtbWFuYWdlci9od29icy1tYW5hZ2VyLmNvbXBvbmVudFwiXHJcbmV4cG9ydCAqIGZyb20gXCIuL3NlcnZpY2UtdXBsb2FkL25vdmEtdXBsb2FkLnNlcnZpY2VcIlxyXG4iXX0=
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/storage/index.mjs
7
+ */
8
+ export*from"./storage.module";export*from"./service-hwobs";export*from"./comp-hwobs-manager/hwobs-manager.component";export*from"./service-upload/nova-upload.service";
9
+ var MODULE_PATH_NEED = `6K+l5paH5Lu25piv5pys6aG555uu55qE5LiA6YOo5YiGIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBDb21wb25lbnRzIGluIEZtb2RlIEluYy4KICAgIOeJiOadg+aJgOaciSDCqSDmnKrmnaXpo57pqawgwqkg5rGf6KW/6ISR5o6n56eR5oqA5pyJ6ZmQ5YWs5Y+4IENvcHlyaWdodCDCqSBGbW9kZSBUZWNobm9sb2d5IENvLiwgTHRkLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICDkuKXnpoHlnKjmnKrnu4/mjojmnYPnmoTmg4XlhrXkuIvvvIzpgJrov4fku7vkvZXlqpLku4vlpI3liLbmraTmlofku7YgVW5hdXRob3JpemVkIGNvcHlpbmcgb2YgdGhpcyBmaWxlLCB2aWEgYW55IG1lZGl1bSBpcyBzdHJpY3RseSBwcm9oaWJpdGVkCiAgICDor6Xmlofku7bmmK/kuJPmnInnmoTmnLrlr4bmlofku7YgUHJvcHJpZXRhcnkgYW5kIGNvbmZpZGVudGlhbAogICAKICAgIENvcHlyaWdodCAyMDIxLW5vdyBGbW9kZSBJbmMuIHN1cHBvcnRAZm1vZGUuY24uIDE4NjA3MDA3MDczLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCByaWdodHMgcmVzZXJ2ZWQuCgogICAgUEFUSDovaG9tZS9yeWFuL3dvcmtzcGFjZS9ub3ZhL25vdmEtYWRtaW4vZGlzdC9mbW9kZS1uZy9lc20yMDIyL2xpYi9zdG9yYWdlL2luZGV4Lm1qcw==`
10
+