@allbluecn/web-app 0.12.0 → 0.12.2

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 (1103) hide show
  1. package/package.json +85 -45
  2. package/public/devframe-docks/ai-chat-iframe.html +17 -0
  3. package/public/devframe-docks/session-iframe.html +17 -0
  4. package/public/fonts/Trap-font/Trap-Black.otf +0 -0
  5. package/public/fonts/Trap-font/Trap-Bold.otf +0 -0
  6. package/public/fonts/Trap-font/Trap-ExtraBold.otf +0 -0
  7. package/public/fonts/Trap-font/Trap-Light.otf +0 -0
  8. package/public/fonts/Trap-font/Trap-Medium.otf +0 -0
  9. package/public/fonts/Trap-font/Trap-Regular.otf +0 -0
  10. package/public/fonts/Trap-font/Trap-SemiBold.otf +0 -0
  11. package/public/fonts/buttersans-Rounded.otf +0 -0
  12. package/public/fonts/fonts.css +67 -0
  13. package/public/logo/allblue-logo-bold-dark.svg +11 -0
  14. package/public/logo/allblue-logo-bold-light.svg +11 -0
  15. package/public/logo/allblue-logo-dark.svg +13 -4
  16. package/public/logo/allblue-logo-light.svg +13 -4
  17. package/public/logo/allblue-logo-text-dark.svg +22 -0
  18. package/public/logo/allblue-logo-text-light.svg +22 -0
  19. package/public/logo/allblue-text-dark.svg +17 -0
  20. package/public/logo/allblue-text-light.svg +17 -0
  21. package/src/__tests__/security/ai/agui-body-validation.test.ts +96 -0
  22. package/src/__tests__/security/ai/destructive-tool-approval.test.ts +107 -0
  23. package/src/__tests__/security/ai/prompt-injection.test.ts +30 -17
  24. package/src/__tests__/security/ai/sandbox-network.test.ts +83 -0
  25. package/src/__tests__/security/ai/sandbox-snapshots.test.ts +92 -0
  26. package/src/__tests__/security/ai/sandbox-tool-bridge.test.ts +108 -0
  27. package/src/__tests__/security/ai/search-injection.test.ts +76 -0
  28. package/src/__tests__/security/ai/session-id-idor.test.ts +85 -0
  29. package/src/__tests__/setup.ts +16 -0
  30. package/src/components/agents/agent-bindings-tab.tsx +174 -0
  31. package/src/components/agents/agent-card.tsx +3 -7
  32. package/src/components/agents/agent-form-dialog.tsx +35 -13
  33. package/src/components/agents/agent-selector.tsx +1 -1
  34. package/src/components/agents/agents-page.tsx +33 -4
  35. package/src/components/agents/schemas/agent-form.ts +1 -1
  36. package/src/components/agents/skill-form-dialog.tsx +1 -1
  37. package/src/components/agents/slash-skill-menu.tsx +23 -16
  38. package/src/components/agents/use-agent-handlers.ts +1 -1
  39. package/src/components/ai/__tests__/ai-prompt-input-attach.test.tsx +115 -0
  40. package/src/components/ai/__tests__/global-sidebar.test.tsx +115 -0
  41. package/src/components/ai/__tests__/prompt-input-actions.test.tsx +72 -0
  42. package/src/components/ai/ai-chat-prompt.tsx +53 -21
  43. package/src/components/{chat → ai}/ai-prompt-input/components/action-buttons.tsx +80 -42
  44. package/src/components/{chat → ai}/ai-prompt-input/components/agent-mode-select.tsx +1 -1
  45. package/src/components/{chat → ai}/ai-prompt-input/components/kb-context-selector.tsx +3 -7
  46. package/src/components/{chat → ai}/ai-prompt-input/components/model-select.tsx +1 -1
  47. package/src/components/{chat → ai}/ai-prompt-input/components/page-user-context-selector.tsx +3 -7
  48. package/src/components/ai/ai-prompt-input/image-filter.ts +22 -0
  49. package/src/components/{chat → ai}/ai-prompt-input/index.tsx +203 -26
  50. package/src/components/ai/global-harness-sidebar.tsx +385 -0
  51. package/src/components/ai/tool-cards/-shared.tsx +150 -0
  52. package/src/components/ai/tool-cards/fallback-tool-card.tsx +144 -0
  53. package/src/components/{chat/ai-message/types.ts → ai/tool-cards/index.ts} +3 -8
  54. package/src/components/ai/tool-cards/knowledge-search-card.tsx +184 -0
  55. package/src/components/ai/tool-cards/web-search-card.tsx +177 -0
  56. package/src/components/ai/tool-parts/tool-call-part.tsx +95 -0
  57. package/src/components/ai/tool-parts/tool-result-part.tsx +95 -0
  58. package/src/components/ai/turn-folded-bar.tsx +75 -0
  59. package/src/components/anyhub/anyhub-app-card.tsx +3 -5
  60. package/src/components/anyhub/anyhub-install-dialog.tsx +1 -1
  61. package/src/components/anyhub/anyhub-marketplace-view.tsx +1 -1
  62. package/src/components/anyhub/anyhub-permission-panel.tsx +1 -1
  63. package/src/components/anyhub/anyhub-top-nav.tsx +9 -21
  64. package/src/components/billing/__tests__/seats-manager.test.tsx +1 -1
  65. package/src/components/billing/__tests__/use-resource.test.tsx +3 -0
  66. package/src/components/billing/checkout-redirect.ts +1 -1
  67. package/src/components/billing/login-prompt-dialog.tsx +1 -1
  68. package/src/components/billing/seats-manager.tsx +2 -4
  69. package/src/components/billing/subscription-provider.tsx +3 -0
  70. package/src/components/changelog/changelog-page.tsx +21 -8
  71. package/src/components/error/global-error-boundary.tsx +2 -4
  72. package/src/components/forms/app-combobox.tsx +2 -6
  73. package/src/components/forms/app-date-picker.tsx +2 -6
  74. package/src/components/forms/hooks/use-form-submit.ts +1 -1
  75. package/src/components/harness/__tests__/attachment-policy.test.ts +34 -0
  76. package/src/components/harness/__tests__/composer-prefill.test.ts +114 -0
  77. package/src/components/harness/__tests__/composer-send.test.tsx +53 -0
  78. package/src/components/harness/__tests__/dock-registry.test.ts +21 -0
  79. package/src/components/harness/__tests__/fuzzy.test.ts +17 -0
  80. package/src/components/harness/__tests__/gallery-behavior.test.tsx +171 -0
  81. package/src/components/harness/__tests__/harness-workbench-mount.test.ts +47 -0
  82. package/src/components/harness/__tests__/media-route.test.tsx +52 -0
  83. package/src/components/harness/__tests__/mention-resolvers.test.ts +41 -0
  84. package/src/components/harness/__tests__/message-actions.test.tsx +199 -0
  85. package/src/components/harness/__tests__/resource-uri.test.ts +53 -0
  86. package/src/components/harness/__tests__/submit-machine.test.ts +61 -0
  87. package/src/components/harness/__tests__/turn-group.test.ts +124 -0
  88. package/src/components/harness/__tests__/use-track-columns.test.ts +27 -0
  89. package/src/components/harness/agent-preset-picker.tsx +104 -0
  90. package/src/components/{chat → harness}/ai-chat-history/components/conversation-group.tsx +3 -0
  91. package/src/components/{chat → harness}/ai-chat-history/components/conversation-item.tsx +21 -7
  92. package/src/components/{chat → harness}/ai-chat-history/index.tsx +2 -0
  93. package/src/components/{chat → harness}/ai-chat-history/types.ts +2 -0
  94. package/src/components/harness/chat-ui.tsx +192 -0
  95. package/src/components/harness/code/changeset-panel.tsx +112 -0
  96. package/src/components/harness/code/code-workspace-sidebar.tsx +138 -0
  97. package/src/components/harness/code/file-tree.tsx +241 -0
  98. package/src/components/harness/code/preview-panel.tsx +169 -0
  99. package/src/components/harness/code/terminal-panel.tsx +90 -0
  100. package/src/components/harness/code/workspace-context.tsx +50 -0
  101. package/src/components/harness/code/workspace-picker.tsx +229 -0
  102. package/src/components/harness/composer/attachments/attachment-policy.ts +17 -0
  103. package/src/components/harness/composer/attachments/attachment-tray.tsx +72 -0
  104. package/src/components/harness/composer/attachments/use-attachments.ts +108 -0
  105. package/src/components/harness/composer/composer-editor.tsx +136 -0
  106. package/src/components/harness/composer/context-meter.tsx +106 -0
  107. package/src/components/harness/composer/fuzzy.ts +21 -0
  108. package/src/components/harness/composer/harness-composer.tsx +385 -0
  109. package/src/components/harness/composer/mention/mention-resolvers.ts +35 -0
  110. package/src/components/harness/composer/mention/mention-suggestion-menu.tsx +202 -0
  111. package/src/components/harness/composer/mention/use-mention-sources.ts +43 -0
  112. package/src/components/harness/composer/model-select.tsx +76 -0
  113. package/src/components/harness/composer/submit-machine.ts +38 -0
  114. package/src/components/harness/composer/use-composer-submit.ts +81 -0
  115. package/src/components/harness/composer/use-drafts.ts +25 -0
  116. package/src/components/harness/dock/dock-panel-container.tsx +110 -0
  117. package/src/components/harness/dock/dock-registry.ts +58 -0
  118. package/src/components/harness/dock/resource-preview.tsx +274 -0
  119. package/src/components/harness/dock/resource-uri.ts +44 -0
  120. package/src/components/harness/gallery/gallery-card.tsx +63 -0
  121. package/src/components/harness/gallery/gallery-grid.tsx +169 -0
  122. package/src/components/harness/gallery/gallery-types.ts +40 -0
  123. package/src/components/harness/gallery/lightbox-viewer.tsx +73 -0
  124. package/src/components/harness/gallery/types.ts +51 -0
  125. package/src/components/{devtools/index.ts → harness/harness-chat-contexts.ts} +5 -3
  126. package/src/components/harness/harness-chat-slots.ts +256 -0
  127. package/src/components/harness/harness-layout.tsx +258 -0
  128. package/src/components/harness/harness-message.tsx +207 -0
  129. package/src/components/harness/harness-workbench-mount.ts +30 -0
  130. package/src/components/harness/harness-workbench-page.tsx +467 -0
  131. package/src/components/harness/image-lightbox.tsx +51 -0
  132. package/src/components/harness/interrupt-approval.tsx +179 -0
  133. package/src/components/{chat/ai-message/components → harness}/message-actions.tsx +4 -8
  134. package/src/components/harness/plan-approval-card.tsx +101 -0
  135. package/src/components/harness/plugin-define-approval.tsx +125 -0
  136. package/src/components/harness/plugin-mention-menu.tsx +126 -0
  137. package/src/components/harness/plugin-panel.tsx +205 -0
  138. package/src/components/harness/queue-bar.tsx +78 -0
  139. package/src/components/harness/queue-item.tsx +69 -0
  140. package/src/components/harness/sandbox-file-change-card.tsx +135 -0
  141. package/src/components/harness/todo-panel.tsx +90 -0
  142. package/src/components/harness/transcript-width-handle.tsx +73 -0
  143. package/src/components/harness/turn-group.tsx +103 -0
  144. package/src/components/harness/turn-navigator.tsx +70 -0
  145. package/src/components/harness/turn-usage-pill.tsx +61 -0
  146. package/src/components/harness/use-todo-projection.ts +57 -0
  147. package/src/components/harness/workbench/use-track-columns.ts +69 -0
  148. package/src/components/harness/workbench/workbench-shell.tsx +102 -0
  149. package/src/components/hextaui/ai-chat-history.tsx +752 -0
  150. package/src/components/hextaui/ai-citations.tsx +579 -0
  151. package/src/components/hextaui/ai-error-handler.tsx +108 -0
  152. package/src/components/hextaui/ai-file-upload.tsx +575 -0
  153. package/src/components/hextaui/ai-message.tsx +639 -0
  154. package/src/components/hextaui/ai-prompt-input.tsx +782 -0
  155. package/src/components/hextaui/ai-suggested-prompts.tsx +586 -0
  156. package/src/components/hextaui/ai-thinking.tsx +291 -0
  157. package/src/components/hextaui/ai-usage-quota.tsx +501 -0
  158. package/src/components/hextaui/command-menu.tsx +0 -2
  159. package/src/components/iteration/auto-schedule-dialog.tsx +1 -1
  160. package/src/components/iteration/create-iteration-dialog.tsx +1 -1
  161. package/src/components/iteration/iteration-editor.tsx +3 -5
  162. package/src/components/knowledge/editor/doc-header.tsx +2 -4
  163. package/src/components/knowledge/editor/knowledge-doc-editor.tsx +32 -2
  164. package/src/components/knowledge/kb-filter-popover.tsx +2 -4
  165. package/src/components/knowledge/knowledge-toolbar.tsx +44 -27
  166. package/src/components/knowledge/knowledge-tree-item.tsx +12 -18
  167. package/src/components/knowledge/knowledge-tree.tsx +7 -7
  168. package/src/components/knowledge-public/bookmark-card.tsx +5 -11
  169. package/src/components/knowledge-public/bookmark-form-dialog.tsx +2 -2
  170. package/src/components/knowledge-public/knowledge-form-dialog.tsx +3 -3
  171. package/src/components/knowledge-public/legal-compliance-editor.tsx +3 -5
  172. package/src/components/knowledge-public/sharers-avatar-group.tsx +3 -7
  173. package/src/components/layout/sidebar-03/__tests__/user-menu-anonymous.test.tsx +1 -1
  174. package/src/components/layout/sidebar-03/app-sidebar.tsx +22 -10
  175. package/src/components/layout/sidebar-03/nav-anyhub.tsx +7 -21
  176. package/src/components/layout/sidebar-03/nav-knowledge.tsx +14 -40
  177. package/src/components/layout/sidebar-03/nav-main.tsx +11 -26
  178. package/src/components/layout/sidebar-03/nav-notifications.tsx +3 -7
  179. package/src/components/layout/sidebar-03/nav-secondary.tsx +11 -27
  180. package/src/components/layout/sidebar-03/nav-workspace.tsx +8 -32
  181. package/src/components/layout/sidebar-03/team-switcher.tsx +3 -7
  182. package/src/components/layout/sidebar-03/user-menu.tsx +3 -5
  183. package/src/components/notifications/settings-notifications.tsx +1 -1
  184. package/src/components/notifications/team-notifications.tsx +3 -7
  185. package/src/components/project/create-project-dialog.tsx +1 -1
  186. package/src/components/project/invite-member-dialog.tsx +1 -1
  187. package/src/components/project/project-member-manager.tsx +3 -5
  188. package/src/components/settings/ai/byok-section.tsx +162 -0
  189. package/src/components/settings/ai/create-custom-model-dialog.tsx +1 -1
  190. package/src/components/settings/ai/create-custom-provider-dialog.tsx +1 -1
  191. package/src/components/settings/ai/model-manager.tsx +1 -1
  192. package/src/components/settings/ai/provider-card.tsx +2 -2
  193. package/src/components/settings/ai/provider-detail-form.tsx +4 -6
  194. package/src/components/settings/ai/source/model-source-picker.tsx +99 -0
  195. package/src/components/settings/language-selector.tsx +2 -2
  196. package/src/components/settings/personal-team/account/account-client.tsx +1 -1
  197. package/src/components/settings/personal-team/account/avatar/notion-avatar-editor.tsx +12 -26
  198. package/src/components/settings/personal-team/account/settings-profile.tsx +1 -1
  199. package/src/components/settings/personal-team/team/team-client.tsx +1 -1
  200. package/src/components/settings/personal-team/team/team-invitations.tsx +19 -34
  201. package/src/components/settings/personal-team/team/team-member-list.tsx +5 -10
  202. package/src/components/shadcn-space/blocks/faq-01/faq.tsx +1 -1
  203. package/src/components/shadcn-space/blocks/hero-01/header.tsx +20 -3
  204. package/src/components/shared-kit/__tests__/ask-ai-entry-button.test.tsx +103 -0
  205. package/src/components/shared-kit/ask-ai-entry-button.tsx +80 -0
  206. package/src/components/shared-kit/data-viz/contribution-graph-tooltip.tsx +1 -1
  207. package/src/components/shared-kit/dialogs/name-confirm-dialog.tsx +4 -8
  208. package/src/components/shared-kit/i18n/language-switcher.tsx +2 -4
  209. package/src/components/shared-kit/icons/lucide-icon-picker/index.tsx +15 -13
  210. package/src/components/shared-kit/index.ts +1 -0
  211. package/src/components/shared-kit/navigation/nav-float-button.tsx +8 -16
  212. package/src/components/shared-kit/theme/theme-surface.tsx +1 -3
  213. package/src/components/shared-kit/timezone/timezone-select.tsx +3 -7
  214. package/src/components/story/ai/handlers/more-popover.tsx +3 -7
  215. package/src/components/story/ai/handlers/stream-text.ts +1 -1
  216. package/src/components/story/ai/prototype-dialog.tsx +1 -1
  217. package/src/components/story/ai/split-dialog.tsx +1 -1
  218. package/src/components/story/ai/story-ai-panel.tsx +5 -7
  219. package/src/components/story/ai/story-ai-preview-list.tsx +2 -2
  220. package/src/components/story/ai/story-ai-toolbar.tsx +6 -12
  221. package/src/components/story/create-story-dialog.tsx +3 -7
  222. package/src/components/story/detail/__tests__/associated-attachments-panel.test.tsx +1 -1
  223. package/src/components/story/detail/comment-input.tsx +1 -1
  224. package/src/components/story/detail/comment-item.tsx +3 -5
  225. package/src/components/story/detail/emoji-picker.tsx +1 -1
  226. package/src/components/story/detail/story-detail-body.tsx +9 -19
  227. package/src/components/story/detail/story-detail-toolbar/associated-attachments-panel.tsx +42 -63
  228. package/src/components/story/detail/story-detail-toolbar/categories.tsx +3 -7
  229. package/src/components/story/detail/story-detail-toolbar/children.tsx +13 -30
  230. package/src/components/story/detail/story-detail-toolbar/dependency-panel.tsx +8 -19
  231. package/src/components/story/detail/story-detail-toolbar.tsx +1 -1
  232. package/src/components/story/display/__tests__/display-dropdown.test.tsx +1 -1
  233. package/src/components/story/display/display-dropdown.tsx +3 -9
  234. package/src/components/story/filters/add-filter-dropdown.tsx +3 -3
  235. package/src/components/story/filters/filter-condition.tsx +3 -7
  236. package/src/components/story/filters/filter-toggle.tsx +3 -3
  237. package/src/components/story/filters/filter-value-input.tsx +4 -8
  238. package/src/components/story/inline-editors/__tests__/labels-editor.test.tsx +1 -1
  239. package/src/components/story/inline-editors/assignee-editor.tsx +4 -8
  240. package/src/components/story/inline-editors/dependency-type-select.tsx +26 -26
  241. package/src/components/story/inline-editors/inline-trigger.tsx +3 -9
  242. package/src/components/story/inline-editors/labels-editor.tsx +4 -6
  243. package/src/components/story/inline-editors/priority-editor.tsx +4 -8
  244. package/src/components/story/inline-editors/state-editor.tsx +4 -8
  245. package/src/components/story/inline-editors/story-select-dialog.tsx +12 -23
  246. package/src/components/story/peek-panel.tsx +1 -1
  247. package/src/components/story/relations/__tests__/attachment-manage-dialog.test.tsx +3 -3
  248. package/src/components/story/relations/__tests__/knowledge-select-dialog.test.tsx +5 -8
  249. package/src/components/story/relations/__tests__/link-manage-dialog.test.tsx +1 -1
  250. package/src/components/story/relations/attachment-manage-dialog.tsx +1 -1
  251. package/src/components/story/relations/knowledge-select-dialog.tsx +3 -2
  252. package/src/components/story/relations/link-manage-dialog.tsx +1 -1
  253. package/src/components/story/relations/story-ref-row.tsx +9 -19
  254. package/src/components/story/search-popover.tsx +15 -13
  255. package/src/components/story/story-list-view.tsx +1 -1
  256. package/src/components/story/story-panel-header.tsx +65 -35
  257. package/src/components/story/story-toolbar.tsx +4 -8
  258. package/src/components/story/transfer-story-popover.tsx +18 -14
  259. package/src/components/story/views/calendar-view.tsx +4 -8
  260. package/src/components/story/views/create-view-dialog.tsx +3 -7
  261. package/src/components/story/views/kanban-board.tsx +1 -1
  262. package/src/components/story/views/story-list/__tests__/batch-toolbar.test.tsx +3 -3
  263. package/src/components/story/views/story-list/batch-preview-dialog.tsx +12 -23
  264. package/src/components/story/views/story-list/batch-toolbar.tsx +7 -10
  265. package/src/components/story/views/story-list/group.tsx +2 -1
  266. package/src/components/story/views/story-list/index.tsx +1 -1
  267. package/src/components/story/views/story-list/row.tsx +1 -1
  268. package/src/components/story/views/timeline-view.tsx +1 -1
  269. package/src/components/story/views/view-list-section.tsx +3 -7
  270. package/src/components/story/views/view-selector-button.tsx +2 -4
  271. package/src/components/story/views/view-switcher.tsx +3 -7
  272. package/src/components/tiptap/extension/ai-extension.ts +21 -25
  273. package/src/components/tiptap/extension/ai-suggestion-mark.ts +45 -0
  274. package/src/components/tiptap/lib/advanced-utils.ts +0 -2
  275. package/src/components/tiptap/lib/utils/selection.ts +17 -0
  276. package/src/components/tiptap/mindmap/mind-map.tsx +26 -50
  277. package/src/components/tiptap/node/annotation-node/annotation-node-view.tsx +1 -1
  278. package/src/components/tiptap/notion-like/notion-like-editor-header.tsx +3 -7
  279. package/src/components/tiptap/notion-like/notion-like-editor.tsx +2 -0
  280. package/src/components/tiptap/ui/ai-ask-button/use-ai-ask.ts +5 -0
  281. package/src/components/tiptap/ui/ai-menu/ai-menu-actions/ai-menu-actions.tsx +1 -2
  282. package/src/components/tiptap/ui/ai-menu/ai-menu.tsx +94 -57
  283. package/src/components/tiptap/ui/drag-context-menu/drag-context-menu.tsx +2 -2
  284. package/src/components/ui/accordion.tsx +10 -37
  285. package/src/components/ui/alert-dialog.tsx +29 -60
  286. package/src/components/ui/alert.tsx +3 -21
  287. package/src/components/ui/avatar.tsx +5 -28
  288. package/src/components/ui/badge.tsx +19 -34
  289. package/src/components/ui/breadcrumb.tsx +20 -35
  290. package/src/components/ui/button-group.tsx +24 -37
  291. package/src/components/ui/button.tsx +14 -41
  292. package/src/components/ui/calendar.tsx +3 -19
  293. package/src/components/ui/card.tsx +5 -23
  294. package/src/components/ui/checkbox.tsx +8 -30
  295. package/src/components/ui/collapsible.tsx +6 -37
  296. package/src/components/ui/command.tsx +6 -20
  297. package/src/components/ui/context-menu.tsx +87 -97
  298. package/src/components/ui/dialog.tsx +31 -59
  299. package/src/components/ui/dropdown-menu.tsx +118 -139
  300. package/src/components/ui/empty.tsx +5 -23
  301. package/src/components/ui/field.tsx +8 -27
  302. package/src/components/ui/hover-card.tsx +30 -41
  303. package/src/components/ui/input-group.tsx +13 -26
  304. package/src/components/ui/input.tsx +4 -21
  305. package/src/components/ui/item.tsx +22 -34
  306. package/src/components/ui/kbd.tsx +13 -20
  307. package/src/components/ui/label.tsx +3 -25
  308. package/src/components/ui/marker.tsx +70 -0
  309. package/src/components/ui/message-scroller.tsx +131 -0
  310. package/src/components/ui/message.tsx +91 -0
  311. package/src/components/ui/navigation-menu.tsx +42 -56
  312. package/src/components/ui/popover.tsx +30 -47
  313. package/src/components/ui/progress.tsx +65 -33
  314. package/src/components/ui/questionnaire.tsx +322 -0
  315. package/src/components/ui/radio-group.tsx +12 -33
  316. package/src/components/ui/resizable.tsx +2 -22
  317. package/src/components/ui/scroll-area.tsx +8 -24
  318. package/src/components/ui/select.tsx +68 -77
  319. package/src/components/ui/separator.tsx +5 -26
  320. package/src/components/ui/sheet.tsx +29 -58
  321. package/src/components/ui/sidebar.tsx +143 -130
  322. package/src/components/ui/skeleton.tsx +1 -18
  323. package/src/components/ui/spinner.tsx +2 -20
  324. package/src/components/ui/switch.tsx +6 -23
  325. package/src/components/ui/table.tsx +1 -21
  326. package/src/components/ui/tabs.tsx +15 -42
  327. package/src/components/ui/textarea.tsx +2 -20
  328. package/src/components/ui/toast.tsx +282 -0
  329. package/src/components/ui/toggle.tsx +9 -31
  330. package/src/components/ui/tooltip.tsx +35 -42
  331. package/src/components/workspace/__tests__/kb/workspace-kb-card.test.tsx +4 -2
  332. package/src/components/workspace/__tests__/members/workspace-members-manager.test.tsx +1 -1
  333. package/src/components/workspace/dialogs/create-workspace-dialog.tsx +2 -4
  334. package/src/components/workspace/dialogs/delete-workspace-options.tsx +1 -1
  335. package/src/components/workspace/header/workspace-header.tsx +6 -12
  336. package/src/components/workspace/kb/workspace-kb-card.tsx +16 -38
  337. package/src/components/workspace/kb/workspace-kb-manage-dialog.tsx +1 -1
  338. package/src/components/workspace/kb/workspace-quick-doc-dialog.tsx +5 -7
  339. package/src/components/workspace/members/workspace-members-manager.tsx +4 -6
  340. package/src/config/sidebar-routes.tsx +5 -5
  341. package/src/devframe-docks/ai-chat-iframe.tsx +29 -0
  342. package/src/devframe-docks/session-iframe.tsx +86 -0
  343. package/src/hooks/use-commands.ts +1 -1
  344. package/src/hooks/use-mobile.ts +0 -17
  345. package/src/hooks/use-notifications.ts +1 -1
  346. package/src/lib/__tests__/annotation-prompt.test.ts +74 -0
  347. package/src/lib/__tests__/provider-router.test.ts +1 -1
  348. package/src/lib/__tests__/rag.test.ts +7 -3
  349. package/src/lib/ai/__tests__/chat-handoff.test.ts +19 -0
  350. package/src/lib/ai/__tests__/story-prompt.test.ts +42 -15
  351. package/src/lib/ai/byok.ts +32 -0
  352. package/src/lib/{chat-handoff.ts → ai/chat-handoff.ts} +48 -24
  353. package/src/lib/ai/story-ai-stream.ts +0 -1
  354. package/src/lib/ai/use-code-mode-readiness.ts +32 -0
  355. package/src/{components → lib}/ai/use-knowledge-bases.ts +2 -2
  356. package/src/lib/ai/use-search-capability.ts +78 -0
  357. package/src/{components → lib}/ai/use-selected-model.ts +1 -1
  358. package/src/lib/auth/auth.config.ts +44 -6
  359. package/src/lib/changelog/sdk-versions.ts +6 -6
  360. package/src/lib/commands/__tests__/registry.test.ts +1 -1
  361. package/src/lib/commands/registry.ts +2 -1
  362. package/src/lib/crypto/__tests__/base64.test.ts +78 -0
  363. package/src/lib/crypto/base64.ts +63 -0
  364. package/src/lib/fsap.ts +61 -0
  365. package/src/lib/optimistic/use-optimistic-mutation.ts +1 -1
  366. package/src/lib/plugin-runtime/bridge.ts +51 -0
  367. package/src/lib/plugin-runtime/plugin-client-tools.ts +115 -0
  368. package/src/lib/plugin-runtime/plugin-client.ts +161 -0
  369. package/src/lib/plugin-runtime/worker-realm-source.ts +172 -0
  370. package/src/lib/plugin-runtime/worker-realm.ts +225 -0
  371. package/src/lib/rag.ts +6 -4
  372. package/src/lib/router-context.ts +1 -0
  373. package/src/lib/session.ts +1 -0
  374. package/src/lib/utils.ts +1 -23
  375. package/src/lib/vector-store/__tests__/vector-store.test.ts +51 -2
  376. package/src/lib/vector-store/pg-vector-store.ts +6 -0
  377. package/src/lib/vector-store/sqlite-vec-store.ts +29 -12
  378. package/src/lib/vector-store/types.ts +1 -1
  379. package/src/paraglide/messages/_index.js +3728 -54071
  380. package/src/paraglide/messages/agents_agentform_setdefault2.js +30 -0
  381. package/src/paraglide/messages/agents_agentform_setdefaulthint3.js +30 -0
  382. package/src/paraglide/messages/agents_askai_advice1.js +30 -0
  383. package/src/paraglide/messages/agents_askai_advice_prompt1.js +30 -0
  384. package/src/paraglide/messages/agents_askai_skills1.js +30 -0
  385. package/src/paraglide/messages/agents_askai_skills_prompt1.js +30 -0
  386. package/src/paraglide/messages/agents_bindings_defaulttag1.js +30 -0
  387. package/src/paraglide/messages/agents_bindings_desc.js +29 -0
  388. package/src/paraglide/messages/agents_bindings_failed.js +29 -0
  389. package/src/paraglide/messages/agents_bindings_followdefault1.js +30 -0
  390. package/src/paraglide/messages/agents_bindings_loading.js +29 -0
  391. package/src/paraglide/messages/agents_bindings_noagents1.js +30 -0
  392. package/src/paraglide/messages/agents_bindings_saved.js +29 -0
  393. package/src/paraglide/messages/agents_bindings_title.js +29 -0
  394. package/src/paraglide/messages/agents_bindings_unbound.js +29 -0
  395. package/src/paraglide/messages/agents_page_tabs_bindings.js +29 -0
  396. package/src/paraglide/messages/agents_skills_menuhint1.js +30 -0
  397. package/src/paraglide/messages/apps_askai_checkup1.js +30 -0
  398. package/src/paraglide/messages/apps_askai_checkup_prompt1.js +30 -0
  399. package/src/paraglide/messages/apps_askai_integration1.js +30 -0
  400. package/src/paraglide/messages/apps_askai_integration_prompt1.js +30 -0
  401. package/src/paraglide/messages/chat_actions_codemode1.js +30 -0
  402. package/src/paraglide/messages/chat_actions_codemodeunavailable2.js +30 -0
  403. package/src/paraglide/messages/chat_actions_disablecodemode2.js +30 -0
  404. package/src/paraglide/messages/chat_actions_enablecodemode2.js +30 -0
  405. package/src/paraglide/messages/chat_actions_fork.js +29 -0
  406. package/src/paraglide/messages/chat_actions_moreactions1.js +30 -0
  407. package/src/paraglide/messages/chat_actions_stop.js +29 -0
  408. package/src/paraglide/messages/chat_actions_stopmessage1.js +30 -0
  409. package/src/paraglide/messages/chat_code_changeset.js +29 -0
  410. package/src/paraglide/messages/chat_code_clearterminal1.js +30 -0
  411. package/src/paraglide/messages/chat_code_filedetail1.js +30 -0
  412. package/src/paraglide/messages/chat_code_files.js +29 -0
  413. package/src/paraglide/messages/chat_code_loadingfiles1.js +30 -0
  414. package/src/paraglide/messages/chat_code_nochanges1.js +30 -0
  415. package/src/paraglide/messages/chat_code_nofiles1.js +30 -0
  416. package/src/paraglide/messages/chat_code_noterminal1.js +30 -0
  417. package/src/paraglide/messages/chat_code_preview.js +29 -0
  418. package/src/paraglide/messages/chat_code_previewempty1.js +30 -0
  419. package/src/paraglide/messages/chat_code_terminal.js +29 -0
  420. package/src/paraglide/messages/chat_code_terminalhelp1.js +30 -0
  421. package/src/paraglide/messages/chat_code_uploaderror1.js +30 -0
  422. package/src/paraglide/messages/chat_code_uploadsuccess1.js +30 -0
  423. package/src/paraglide/messages/chat_fork_at_message.js +29 -0
  424. package/src/paraglide/messages/chat_globalchat_draftrestored2.js +30 -0
  425. package/src/paraglide/messages/chat_globalchat_openinharness3.js +30 -0
  426. package/src/paraglide/messages/chat_prompt_input.js +29 -0
  427. package/src/paraglide/messages/chat_sandbox_created.js +29 -0
  428. package/src/paraglide/messages/chat_sandbox_filechanged1.js +30 -0
  429. package/src/paraglide/messages/chat_sandbox_filecreated1.js +30 -0
  430. package/src/paraglide/messages/chat_sandbox_filedeleted1.js +30 -0
  431. package/src/paraglide/messages/chat_sandbox_morechanges1.js +30 -0
  432. package/src/paraglide/messages/chat_sandbox_nodiff1.js +30 -0
  433. package/src/paraglide/messages/chat_sandbox_resumed.js +29 -0
  434. package/src/paraglide/messages/chat_searchunavailable1.js +30 -0
  435. package/src/paraglide/messages/chat_toolcall_error1.js +30 -0
  436. package/src/paraglide/messages/chat_toolcall_pending1.js +30 -0
  437. package/src/paraglide/messages/chat_toolcall_ready1.js +30 -0
  438. package/src/paraglide/messages/chat_toolresult_error1.js +30 -0
  439. package/src/paraglide/messages/chat_toolresult_running1.js +30 -0
  440. package/src/paraglide/messages/chat_toolresult_success1.js +30 -0
  441. package/src/paraglide/messages/chat_workspace_branch.js +29 -0
  442. package/src/paraglide/messages/chat_workspace_connectgithub1.js +30 -0
  443. package/src/paraglide/messages/chat_workspace_fsapunavailable1.js +30 -0
  444. package/src/paraglide/messages/chat_workspace_github.js +29 -0
  445. package/src/paraglide/messages/chat_workspace_githubconnect1.js +30 -0
  446. package/src/paraglide/messages/chat_workspace_local.js +29 -0
  447. package/src/paraglide/messages/chat_workspace_localhint1.js +30 -0
  448. package/src/paraglide/messages/chat_workspace_private.js +29 -0
  449. package/src/paraglide/messages/chat_workspace_selectbranch1.js +30 -0
  450. package/src/paraglide/messages/chat_workspace_selectfolder1.js +30 -0
  451. package/src/paraglide/messages/chat_workspace_selectfoldererror2.js +30 -0
  452. package/src/paraglide/messages/chat_workspace_selectrepo1.js +30 -0
  453. package/src/paraglide/messages/common_button_remove.js +29 -0
  454. package/src/paraglide/messages/common_changelog_sdkgroups_allblue_sdk1.js +3 -3
  455. package/src/paraglide/messages/common_changelog_sdkgroups_core_sdk1.js +2 -2
  456. package/src/paraglide/messages/common_changelog_sdkgroups_tanstack_sdk1.js +2 -2
  457. package/src/paraglide/messages/common_changelog_title.js +2 -2
  458. package/src/paraglide/messages/common_command_searchplaceholder1.js +2 -2
  459. package/src/paraglide/messages/common_nav_harness.js +29 -0
  460. package/src/paraglide/messages/composer_attach_button.js +29 -0
  461. package/src/paraglide/messages/composer_attach_imagesonly1.js +30 -0
  462. package/src/paraglide/messages/composer_attach_remove.js +29 -0
  463. package/src/paraglide/messages/dashboard_askai_overview1.js +30 -0
  464. package/src/paraglide/messages/dashboard_askai_overview_prompt1.js +30 -0
  465. package/src/paraglide/messages/dashboard_askai_todo1.js +30 -0
  466. package/src/paraglide/messages/dashboard_askai_todo_prompt1.js +30 -0
  467. package/src/paraglide/messages/editor_ai_image_not_supported.js +30 -0
  468. package/src/paraglide/messages/editor_ai_request_failed.js +30 -0
  469. package/src/paraglide/messages/gallery_attachfailed1.js +30 -0
  470. package/src/paraglide/messages/gallery_attachsuccess1.js +30 -0
  471. package/src/paraglide/messages/gallery_attachto1.js +30 -0
  472. package/src/paraglide/messages/gallery_attachtokb2.js +30 -0
  473. package/src/paraglide/messages/gallery_attachtoprd2.js +30 -0
  474. package/src/paraglide/messages/gallery_attachtostory2.js +30 -0
  475. package/src/paraglide/messages/gallery_bytes.js +29 -0
  476. package/src/paraglide/messages/gallery_close.js +29 -0
  477. package/src/paraglide/messages/gallery_copyerror1.js +30 -0
  478. package/src/paraglide/messages/gallery_copyprompt1.js +30 -0
  479. package/src/paraglide/messages/gallery_created.js +29 -0
  480. package/src/paraglide/messages/gallery_createvariant1.js +30 -0
  481. package/src/paraglide/messages/gallery_failed.js +29 -0
  482. package/src/paraglide/messages/gallery_image.js +29 -0
  483. package/src/paraglide/messages/gallery_linked.js +29 -0
  484. package/src/paraglide/messages/gallery_loaderror1.js +30 -0
  485. package/src/paraglide/messages/gallery_loading.js +29 -0
  486. package/src/paraglide/messages/gallery_loadmore1.js +30 -0
  487. package/src/paraglide/messages/gallery_model.js +29 -0
  488. package/src/paraglide/messages/gallery_next.js +29 -0
  489. package/src/paraglide/messages/gallery_noitems1.js +30 -0
  490. package/src/paraglide/messages/gallery_pickconfirm1.js +30 -0
  491. package/src/paraglide/messages/gallery_pickempty1.js +30 -0
  492. package/src/paraglide/messages/gallery_pickkb1.js +30 -0
  493. package/src/paraglide/messages/gallery_pickoptionsfailed2.js +30 -0
  494. package/src/paraglide/messages/gallery_pickprd1.js +30 -0
  495. package/src/paraglide/messages/gallery_pickstory1.js +30 -0
  496. package/src/paraglide/messages/gallery_preview.js +29 -0
  497. package/src/paraglide/messages/gallery_previewitem1.js +30 -0
  498. package/src/paraglide/messages/gallery_previous.js +29 -0
  499. package/src/paraglide/messages/gallery_prompt.js +29 -0
  500. package/src/paraglide/messages/gallery_prototype.js +29 -0
  501. package/src/paraglide/messages/gallery_provider.js +29 -0
  502. package/src/paraglide/messages/gallery_retry.js +29 -0
  503. package/src/paraglide/messages/gallery_size.js +29 -0
  504. package/src/paraglide/messages/gallery_speech.js +29 -0
  505. package/src/paraglide/messages/gallery_title.js +29 -0
  506. package/src/paraglide/messages/gallery_transcription.js +29 -0
  507. package/src/paraglide/messages/gallery_unsupported.js +29 -0
  508. package/src/paraglide/messages/gallery_varianterror1.js +30 -0
  509. package/src/paraglide/messages/gallery_video.js +29 -0
  510. package/src/paraglide/messages/harness_agent_default.js +29 -0
  511. package/src/paraglide/messages/harness_agent_mode.js +29 -0
  512. package/src/paraglide/messages/harness_approval_approveall1.js +30 -0
  513. package/src/paraglide/messages/harness_approval_cancelreject1.js +30 -0
  514. package/src/paraglide/messages/harness_approval_confirmreject1.js +30 -0
  515. package/src/paraglide/messages/harness_approval_rejectall1.js +30 -0
  516. package/src/paraglide/messages/harness_approval_rejectreason1.js +30 -0
  517. package/src/paraglide/messages/harness_approval_rejectreasonplaceholder2.js +30 -0
  518. package/src/paraglide/messages/harness_askai_cat_advice1.js +30 -0
  519. package/src/paraglide/messages/harness_askai_cat_analysis1.js +30 -0
  520. package/src/paraglide/messages/harness_askai_cat_general1.js +30 -0
  521. package/src/paraglide/messages/harness_askai_cat_skills1.js +30 -0
  522. package/src/paraglide/messages/harness_attach_file.js +29 -0
  523. package/src/paraglide/messages/harness_composer_arialabel1.js +30 -0
  524. package/src/paraglide/messages/harness_composer_pendingapproval1.js +30 -0
  525. package/src/paraglide/messages/harness_composer_placeholder.js +29 -0
  526. package/src/paraglide/messages/harness_composer_placeholderdefault1.js +30 -0
  527. package/src/paraglide/messages/harness_composer_placeholdernokey2.js +30 -0
  528. package/src/paraglide/messages/harness_composer_placeholderplan1.js +30 -0
  529. package/src/paraglide/messages/harness_composer_placeholderqueue1.js +30 -0
  530. package/src/paraglide/messages/harness_composer_placeholdersandboxreadonly2.js +30 -0
  531. package/src/paraglide/messages/harness_composer_queuelabel1.js +30 -0
  532. package/src/paraglide/messages/harness_composer_send.js +29 -0
  533. package/src/paraglide/messages/harness_composer_steerlabel1.js +30 -0
  534. package/src/paraglide/messages/harness_context_add.js +29 -0
  535. package/src/paraglide/messages/harness_context_meter_hint.js +29 -0
  536. package/src/paraglide/messages/harness_context_meter_label.js +29 -0
  537. package/src/paraglide/messages/harness_context_pages.js +29 -0
  538. package/src/paraglide/messages/harness_context_selected.js +29 -0
  539. package/src/paraglide/messages/harness_context_users.js +29 -0
  540. package/src/paraglide/messages/harness_conversation_fork.js +29 -0
  541. package/src/paraglide/messages/harness_conversation_pending.js +29 -0
  542. package/src/paraglide/messages/harness_dock_codeworkspace1.js +30 -0
  543. package/src/paraglide/messages/harness_dock_docnotfound2.js +30 -0
  544. package/src/paraglide/messages/harness_dock_fileempty1.js +30 -0
  545. package/src/paraglide/messages/harness_dock_loadingdoc1.js +30 -0
  546. package/src/paraglide/messages/harness_dock_loadingfile1.js +30 -0
  547. package/src/paraglide/messages/harness_dock_placeholder.js +29 -0
  548. package/src/paraglide/messages/harness_dock_plugin.js +29 -0
  549. package/src/paraglide/messages/harness_dock_prdnotfound2.js +30 -0
  550. package/src/paraglide/messages/harness_dock_storyempty1.js +30 -0
  551. package/src/paraglide/messages/harness_dock_storynotfound2.js +30 -0
  552. package/src/paraglide/messages/harness_dock_todo.js +29 -0
  553. package/src/paraglide/messages/harness_dock_unknownresource1.js +30 -0
  554. package/src/paraglide/messages/harness_media_code.js +29 -0
  555. package/src/paraglide/messages/harness_media_nocode1.js +30 -0
  556. package/src/paraglide/messages/harness_media_nospec1.js +30 -0
  557. package/src/paraglide/messages/harness_media_pro.js +29 -0
  558. package/src/paraglide/messages/harness_media_spec.js +29 -0
  559. package/src/paraglide/messages/harness_mention_kb_doc.js +29 -0
  560. package/src/paraglide/messages/harness_mention_prd.js +29 -0
  561. package/src/paraglide/messages/harness_model_select_default.js +29 -0
  562. package/src/paraglide/messages/harness_model_select_nomodels1.js +30 -0
  563. package/src/paraglide/messages/harness_plan_approve.js +29 -0
  564. package/src/paraglide/messages/harness_plan_feedbackplaceholder1.js +30 -0
  565. package/src/paraglide/messages/harness_plan_reject.js +29 -0
  566. package/src/paraglide/messages/harness_plan_title.js +29 -0
  567. package/src/paraglide/messages/harness_plugin_defineapprovaltitle2.js +30 -0
  568. package/src/paraglide/messages/harness_plugin_empty.js +29 -0
  569. package/src/paraglide/messages/harness_plugin_mentionempty1.js +30 -0
  570. package/src/paraglide/messages/harness_plugin_mentionnomatch2.js +30 -0
  571. package/src/paraglide/messages/harness_plugin_mentiontitle1.js +30 -0
  572. package/src/paraglide/messages/harness_plugin_paneltitle1.js +30 -0
  573. package/src/paraglide/messages/harness_plugin_status_defined.js +29 -0
  574. package/src/paraglide/messages/harness_plugin_status_error.js +29 -0
  575. package/src/paraglide/messages/harness_plugin_status_running.js +29 -0
  576. package/src/paraglide/messages/harness_plugin_status_stopped.js +29 -0
  577. package/src/paraglide/messages/harness_plugin_version.js +29 -0
  578. package/src/paraglide/messages/harness_queue_cancel.js +29 -0
  579. package/src/paraglide/messages/harness_queue_title.js +29 -0
  580. package/src/paraglide/messages/harness_queuedmultimedia1.js +30 -0
  581. package/src/paraglide/messages/harness_sandbox_full.js +29 -0
  582. package/src/paraglide/messages/harness_sandbox_pro.js +29 -0
  583. package/src/paraglide/messages/harness_sandbox_readonly.js +29 -0
  584. package/src/paraglide/messages/harness_sandbox_workspacewrite1.js +30 -0
  585. package/src/paraglide/messages/harness_spec_generatefailed1.js +30 -0
  586. package/src/paraglide/messages/harness_spec_needthread1.js +30 -0
  587. package/src/paraglide/messages/harness_steerhint1.js +30 -0
  588. package/src/paraglide/messages/harness_thinking_disable.js +29 -0
  589. package/src/paraglide/messages/harness_thinking_enable.js +29 -0
  590. package/src/paraglide/messages/harness_thinking_toggle.js +29 -0
  591. package/src/paraglide/messages/harness_todo_empty.js +29 -0
  592. package/src/paraglide/messages/harness_todo_paneltitle1.js +30 -0
  593. package/src/paraglide/messages/harness_tool_input.js +29 -0
  594. package/src/paraglide/messages/harness_tool_knowledgesearch1.js +30 -0
  595. package/src/paraglide/messages/harness_tool_output.js +29 -0
  596. package/src/paraglide/messages/harness_tool_resultcount1.js +30 -0
  597. package/src/paraglide/messages/harness_tool_websearch1.js +30 -0
  598. package/src/paraglide/messages/harness_turn_collapse.js +29 -0
  599. package/src/paraglide/messages/harness_turn_collapsearia1.js +30 -0
  600. package/src/paraglide/messages/harness_turn_expandaria1.js +30 -0
  601. package/src/paraglide/messages/harness_turn_navigator_label.js +29 -0
  602. package/src/paraglide/messages/harness_turn_replies.js +29 -0
  603. package/src/paraglide/messages/harness_turn_streaming.js +29 -0
  604. package/src/paraglide/messages/harness_turn_thoughtmoment1.js +30 -0
  605. package/src/paraglide/messages/harness_turn_thoughtmoment_aria1.js +30 -0
  606. package/src/paraglide/messages/harness_turn_tools.js +29 -0
  607. package/src/paraglide/messages/harness_turn_usage_label.js +29 -0
  608. package/src/paraglide/messages/harness_web_search_disable.js +29 -0
  609. package/src/paraglide/messages/harness_web_search_enable.js +29 -0
  610. package/src/paraglide/messages/harness_web_search_label.js +29 -0
  611. package/src/paraglide/messages/harness_web_search_toggle.js +29 -0
  612. package/src/paraglide/messages/knowledge_askai_button1.js +30 -0
  613. package/src/paraglide/messages/knowledge_askai_cat_all1.js +30 -0
  614. package/src/paraglide/messages/knowledge_askai_cat_graph1.js +30 -0
  615. package/src/paraglide/messages/knowledge_askai_cat_search1.js +30 -0
  616. package/src/paraglide/messages/knowledge_askai_cat_summary1.js +30 -0
  617. package/src/paraglide/messages/knowledge_askai_graph1.js +30 -0
  618. package/src/paraglide/messages/knowledge_askai_search1.js +30 -0
  619. package/src/paraglide/messages/knowledge_askai_summarize1.js +30 -0
  620. package/src/paraglide/messages/prd_askai_analyze1.js +30 -0
  621. package/src/paraglide/messages/prd_askai_button1.js +30 -0
  622. package/src/paraglide/messages/prd_askai_cat_all1.js +30 -0
  623. package/src/paraglide/messages/prd_askai_cat_analysis1.js +30 -0
  624. package/src/paraglide/messages/prd_askai_cat_design1.js +30 -0
  625. package/src/paraglide/messages/prd_askai_cat_extraction1.js +30 -0
  626. package/src/paraglide/messages/prd_askai_extract1.js +30 -0
  627. package/src/paraglide/messages/prd_askai_prototype1.js +30 -0
  628. package/src/paraglide/messages/settings_ai_byokdelete1.js +30 -0
  629. package/src/paraglide/messages/settings_ai_byokdescription1.js +30 -0
  630. package/src/paraglide/messages/settings_ai_byokhidekey2.js +30 -0
  631. package/src/paraglide/messages/settings_ai_byokhint1.js +30 -0
  632. package/src/paraglide/messages/settings_ai_byokplaceholder1.js +30 -0
  633. package/src/paraglide/messages/settings_ai_byoksave1.js +30 -0
  634. package/src/paraglide/messages/settings_ai_byokshowkey2.js +30 -0
  635. package/src/paraglide/messages/settings_ai_byokstateempty2.js +30 -0
  636. package/src/paraglide/messages/settings_ai_byokstatelocked2.js +30 -0
  637. package/src/paraglide/messages/settings_ai_byokstateset2.js +30 -0
  638. package/src/paraglide/messages/settings_ai_byoktitle1.js +30 -0
  639. package/src/paraglide/messages/settings_ai_hosted_desc.js +29 -0
  640. package/src/paraglide/messages/settings_ai_hosted_empty.js +29 -0
  641. package/src/paraglide/messages/settings_ai_hosted_quota.js +29 -0
  642. package/src/paraglide/messages/settings_ai_hosted_title.js +29 -0
  643. package/src/paraglide/messages/settings_ai_source_byok_desc.js +29 -0
  644. package/src/paraglide/messages/settings_ai_source_byok_tagmulti1.js +30 -0
  645. package/src/paraglide/messages/settings_ai_source_byok_tagurl1.js +30 -0
  646. package/src/paraglide/messages/settings_ai_source_byok_title.js +29 -0
  647. package/src/paraglide/messages/settings_ai_source_continue.js +29 -0
  648. package/src/paraglide/messages/settings_ai_source_current.js +29 -0
  649. package/src/paraglide/messages/settings_ai_source_hosted_desc.js +29 -0
  650. package/src/paraglide/messages/settings_ai_source_hosted_tagbilling1.js +30 -0
  651. package/src/paraglide/messages/settings_ai_source_hosted_tagnokey2.js +30 -0
  652. package/src/paraglide/messages/settings_ai_source_hosted_title.js +29 -0
  653. package/src/paraglide/messages/settings_ai_source_local_desc.js +29 -0
  654. package/src/paraglide/messages/settings_ai_source_local_needdesktop1.js +30 -0
  655. package/src/paraglide/messages/settings_ai_source_local_tagbyok1.js +30 -0
  656. package/src/paraglide/messages/settings_ai_source_local_taglocal1.js +30 -0
  657. package/src/paraglide/messages/settings_ai_source_local_title.js +29 -0
  658. package/src/paraglide/messages/settings_ai_source_title.js +29 -0
  659. package/src/paraglide/messages/story_askai_analyze1.js +30 -0
  660. package/src/paraglide/messages/story_askai_cat_all1.js +30 -0
  661. package/src/paraglide/messages/story_askai_cat_analysis1.js +30 -0
  662. package/src/paraglide/messages/story_askai_cat_refine1.js +30 -0
  663. package/src/paraglide/messages/story_askai_cat_test1.js +30 -0
  664. package/src/paraglide/messages/story_askai_refine1.js +30 -0
  665. package/src/paraglide/messages/story_askai_test1.js +30 -0
  666. package/src/paraglide/messages/story_panel_askai1.js +30 -0
  667. package/src/paraglide/messages/workspaces_askai_overview1.js +30 -0
  668. package/src/paraglide/messages/workspaces_askai_overview_prompt1.js +30 -0
  669. package/src/paraglide/messages/workspaces_askai_seats1.js +30 -0
  670. package/src/paraglide/messages/workspaces_askai_seats_prompt1.js +30 -0
  671. package/src/plugins/core/inspiration/ui.tsx +2 -4
  672. package/src/plugins/core/prd/components/agent-input.tsx +5 -11
  673. package/src/plugins/core/prd/components/component-editor/content-section.tsx +1 -1
  674. package/src/plugins/core/prd/components/component-editor/style-fields.tsx +1 -1
  675. package/src/plugins/core/prd/components/dialog/prd-detail-client.tsx +3 -7
  676. package/src/plugins/core/prd/components/page-version-panel.tsx +23 -43
  677. package/src/plugins/core/prd/components/page-version-tree.tsx +6 -14
  678. package/src/plugins/core/prd/components/prd-agent-panel.tsx +3 -5
  679. package/src/plugins/core/prd/components/prd-comment-review-panel.tsx +2 -4
  680. package/src/plugins/core/prd/components/prd-doc-panel.tsx +6 -14
  681. package/src/plugins/core/prd/components/prd-editor-layout.tsx +1 -1
  682. package/src/plugins/core/prd/components/prd-left-sidebar.tsx +5 -11
  683. package/src/plugins/core/prd/components/prd-navigation.tsx +41 -11
  684. package/src/plugins/core/prd/components/prd-prototype-panel.tsx +9 -21
  685. package/src/plugins/core/prd/components/prd-right-sidebar.tsx +7 -15
  686. package/src/plugins/core/prd/components/prd-share-panel/components/single-version-share-card.tsx +13 -27
  687. package/src/plugins/core/prd/components/prd-share-panel.tsx +8 -14
  688. package/src/plugins/core/prd/components/prd-tree-page-tab.tsx +9 -21
  689. package/src/plugins/core/prd/components/share/share-comment-panel.tsx +1 -1
  690. package/src/plugins/core/prd/components/share/share-nav-bar.tsx +3 -7
  691. package/src/plugins/core/prd/components/share/share-password-gate.tsx +1 -1
  692. package/src/plugins/core/prd/components/share/share-review-panel.tsx +1 -1
  693. package/src/plugins/core/prd/lib/ai/annotation-prompt.ts +9 -14
  694. package/src/plugins/core/prd/pages/prd-detail-page.tsx +2 -6
  695. package/src/plugins/core/prd/prd-nav.tsx +4 -8
  696. package/src/plugins/core/prd/serverFns/ai/fill-annotation.ts +2 -2
  697. package/src/plugins/core/prd/serverFns/ai/generate-prototype.ts +12 -64
  698. package/src/{server/serverFns/ai/detect.ts → plugins/core/prd/serverFns/ai/hosted-models.ts} +10 -13
  699. package/src/plugins/core/prd/serverFns/ai/source-mode.ts +51 -0
  700. package/src/plugins/core/server/api-key-cipher.ts +6 -4
  701. package/src/plugins/core/tags/nav-tag.tsx +9 -24
  702. package/src/plugins/core/tags/tag-manager.tsx +1 -1
  703. package/src/plugins/core/tags/tag-selector.tsx +3 -7
  704. package/src/providers/index.tsx +1 -1
  705. package/src/routeTree.gen.ts +293 -54
  706. package/src/routes/__desktop/onboarding/route.lazy.tsx +1 -1
  707. package/src/routes/__root.tsx +4 -8
  708. package/src/routes/__tests__/-edition-routing.test.tsx +6 -4
  709. package/src/routes/__tests__/route-tree-structure.test.ts +10 -1
  710. package/src/routes/_login/changelog/confirm/route.lazy.tsx +10 -10
  711. package/src/routes/_login/email-unsubscribe/route.lazy.tsx +11 -11
  712. package/src/routes/_login/forgot-password/route.lazy.tsx +1 -1
  713. package/src/routes/_login/login/route.lazy.tsx +1 -1
  714. package/src/routes/_login/register/route.lazy.tsx +1 -1
  715. package/src/routes/_login/reset-password/route.lazy.tsx +1 -1
  716. package/src/routes/_login/verify-email/route.lazy.tsx +6 -6
  717. package/src/routes/_nav/apps/anyhub/$id/route.lazy.tsx +54 -0
  718. package/src/routes/_nav/apps/anyhub/$id/route.tsx +1 -8
  719. package/src/routes/_nav/apps/anyhub/route.tsx +29 -3
  720. package/src/routes/_nav/chat.$threadId.tsx +24 -0
  721. package/src/routes/_nav/chat.tsx +31 -0
  722. package/src/routes/_nav/dashboard/route.lazy.tsx +18 -1
  723. package/src/routes/_nav/harness/$threadId.lazy.tsx +28 -0
  724. package/src/routes/_nav/{chat → harness}/$threadId.tsx +2 -7
  725. package/src/routes/_nav/harness/gallery/route.lazy.tsx +33 -0
  726. package/src/{components/chat/ai-message.tsx → routes/_nav/harness/gallery/route.tsx} +3 -2
  727. package/src/routes/_nav/harness/route.lazy.tsx +28 -0
  728. package/src/routes/_nav/{chat → harness}/route.tsx +1 -1
  729. package/src/routes/_nav/knowledge/bookmarks/$id.lazy.tsx +2 -2
  730. package/src/routes/_nav/knowledge/bookmarks/index.lazy.tsx +1 -1
  731. package/src/routes/_nav/knowledge/compliance/$id.lazy.tsx +14 -30
  732. package/src/routes/_nav/knowledge/dictionaries/$id.lazy.tsx +1 -1
  733. package/src/routes/_nav/knowledge/index.lazy.tsx +2 -8
  734. package/src/routes/_nav/knowledge/laws/$id.lazy.tsx +14 -30
  735. package/src/routes/_nav/projects/$projectId/$storyId/route.lazy.tsx +3 -5
  736. package/src/routes/_nav/projects/$projectId/index.lazy.tsx +8 -18
  737. package/src/routes/_nav/projects/$projectId/iterations/$iterationId/route.lazy.tsx +4 -8
  738. package/src/routes/_nav/projects/$projectId/settings/route.lazy.tsx +4 -6
  739. package/src/routes/_nav/route.lazy.tsx +10 -2
  740. package/src/routes/_nav/route.tsx +3 -8
  741. package/src/routes/_nav/settings/ai/$providerId/route.tsx +3 -16
  742. package/src/routes/_nav/settings/ai/hosted/route.lazy.tsx +55 -0
  743. package/src/routes/_nav/settings/ai/hosted/route.tsx +26 -0
  744. package/src/routes/_nav/settings/ai/index/route.lazy.tsx +59 -25
  745. package/src/routes/_nav/settings/ai/{$providerId → providers/$providerId}/route.lazy.tsx +1 -1
  746. package/src/routes/_nav/settings/ai/providers/$providerId/route.tsx +37 -0
  747. package/src/routes/_nav/settings/ai/providers/index/route.lazy.tsx +43 -0
  748. package/src/routes/_nav/settings/ai/route.tsx +6 -3
  749. package/src/routes/_nav/settings/billing/route.lazy.tsx +1 -1
  750. package/src/routes/_nav/settings/design/route.lazy.tsx +3 -5
  751. package/src/routes/_nav/settings/general/route.lazy.tsx +1 -1
  752. package/src/routes/_nav/settings/privacy/route.lazy.tsx +3 -5
  753. package/src/routes/_nav/settings/route.tsx +2 -6
  754. package/src/routes/_nav/workspaces/$workspaceId/activities/route.lazy.tsx +3 -5
  755. package/src/routes/_nav/workspaces/$workspaceId/settings/route.lazy.tsx +4 -6
  756. package/src/routes/_nav/workspaces/index.lazy.tsx +34 -17
  757. package/src/routes/api/chat.ts +42 -22
  758. package/src/routes/api/cron/ai-run-reaper.ts +80 -0
  759. package/src/routes/api/devframe/__tests__/auth-trace.test.ts +18 -0
  760. package/src/routes/api/devframe/__tests__/bundle-stats.test.ts +18 -0
  761. package/src/routes/api/devframe/__tests__/entitlements.test.ts +20 -0
  762. package/src/routes/api/devframe/__tests__/hydration-probe.test.ts +16 -0
  763. package/src/routes/api/devframe/auth-trace.ts +39 -0
  764. package/src/routes/api/devframe/bundle-stats.ts +73 -0
  765. package/src/routes/api/devframe/entitlements.ts +19 -0
  766. package/src/routes/api/devframe/hydration-probe.ts +30 -0
  767. package/src/routes/invite/$token/route.lazy.tsx +1 -1
  768. package/src/routes/server.ai-stream.ts +34 -19
  769. package/src/routes/share/compliance/$id/route.lazy.tsx +4 -6
  770. package/src/routes/share/law/$id/route.lazy.tsx +4 -6
  771. package/src/server/__tests__/agent-client-graph.test.ts +2 -2
  772. package/src/server/__tests__/chat-agent-resolve.test.ts +1 -1
  773. package/src/server/__tests__/chat-conversations.test.ts +5 -0
  774. package/src/server/__tests__/entitlements.test.ts +99 -1
  775. package/src/server/__tests__/resource-registry.test.ts +12 -2
  776. package/src/server/__tests__/resources.agents.test.ts +2 -1
  777. package/src/server/__tests__/resources.license.test.ts +2 -1
  778. package/src/server/__tests__/resources.test.ts +2 -1
  779. package/src/server/__tests__/sandbox-entitlement.test.ts +169 -0
  780. package/src/server/ai-gateway/__tests__/adapter-temperature.test.ts +104 -0
  781. package/src/server/ai-gateway/__tests__/agent-runtime.test.ts +334 -0
  782. package/src/server/ai-gateway/__tests__/chat-handler-prompt-key.test.ts +244 -0
  783. package/src/server/ai-gateway/__tests__/chat-prompt-key-drift.test.ts +96 -0
  784. package/src/server/ai-gateway/__tests__/chat-stream-builder-code-mode.test.ts +215 -0
  785. package/src/server/ai-gateway/__tests__/chat-stream-builder-memory.test.ts +179 -0
  786. package/src/server/ai-gateway/__tests__/chat-stream-builder-sandbox.test.ts +211 -0
  787. package/src/server/ai-gateway/__tests__/chat-stream-builder-skills.test.ts +126 -0
  788. package/src/server/ai-gateway/__tests__/code-mode-integration-smoke.test.ts +178 -0
  789. package/src/server/ai-gateway/__tests__/code-mode-stack.test.ts +390 -0
  790. package/src/server/ai-gateway/__tests__/compaction.test.ts +509 -0
  791. package/src/server/ai-gateway/__tests__/conformance.test.ts +45 -13
  792. package/src/server/ai-gateway/__tests__/env-key.test.ts +175 -0
  793. package/src/server/ai-gateway/__tests__/interrupt-store.test.ts +19 -4
  794. package/src/server/ai-gateway/__tests__/kb-context-guard.test.ts +24 -16
  795. package/src/server/ai-gateway/__tests__/knowledge-search-fence.test.ts +7 -0
  796. package/src/server/ai-gateway/__tests__/label-suggest.test.ts +22 -5
  797. package/src/server/ai-gateway/__tests__/message-store.test.ts +14 -9
  798. package/src/server/ai-gateway/__tests__/pgvector-memory-adapter.test.ts +422 -0
  799. package/src/server/ai-gateway/__tests__/plugin-lifecycle.test.ts +57 -0
  800. package/src/server/ai-gateway/__tests__/prompt-builtin.test.ts +273 -0
  801. package/src/server/ai-gateway/__tests__/prompt-registry.test.ts +549 -0
  802. package/src/server/ai-gateway/__tests__/prompt-vars-contract.test.ts +146 -0
  803. package/src/server/ai-gateway/__tests__/provider-adapter.test.ts +164 -0
  804. package/src/server/ai-gateway/__tests__/run-store-durable.test.ts +151 -0
  805. package/src/server/ai-gateway/__tests__/run-store.test.ts +90 -0
  806. package/src/server/ai-gateway/__tests__/runtime.test.ts +1 -1
  807. package/src/server/ai-gateway/__tests__/skills-source.test.ts +306 -0
  808. package/src/server/ai-gateway/__tests__/snippets.test.ts +328 -0
  809. package/src/server/ai-gateway/__tests__/source-mode.test.ts +77 -0
  810. package/src/server/ai-gateway/__tests__/story-prompt.test.ts +75 -11
  811. package/src/server/ai-gateway/__tests__/todo-plan-tools.test.ts +435 -0
  812. package/src/server/ai-gateway/__tests__/tool-registry.test.ts +182 -0
  813. package/src/server/ai-gateway/__tests__/tools-select.test.ts +32 -6
  814. package/src/server/ai-gateway/__tests__/unified-router.test.ts +107 -1
  815. package/src/server/ai-gateway/__tests__/usage-log.test.ts +192 -0
  816. package/src/server/ai-gateway/__tests__/vm-driver.test.ts +193 -0
  817. package/src/server/ai-gateway/adapter.ts +60 -3
  818. package/src/server/ai-gateway/byok.ts +144 -0
  819. package/src/server/ai-gateway/chat-handler.ts +275 -45
  820. package/src/server/ai-gateway/chat-stream-builder.ts +177 -14
  821. package/src/server/ai-gateway/code-mode/index.ts +236 -0
  822. package/src/server/ai-gateway/code-mode/sandbox.ts +213 -0
  823. package/src/server/ai-gateway/code-mode/snippets.ts +235 -0
  824. package/src/server/ai-gateway/code-mode/vm-driver.ts +197 -0
  825. package/src/server/ai-gateway/connectivity-check.ts +3 -1
  826. package/src/server/ai-gateway/durability/__tests__/pg-stream.test.ts +343 -0
  827. package/src/server/ai-gateway/durability/__tests__/reaper-drive.test.ts +154 -0
  828. package/src/server/ai-gateway/durability/__tests__/reaper-lazy.test.ts +145 -0
  829. package/src/server/ai-gateway/durability/__tests__/reaper-real-db.test.ts +315 -0
  830. package/src/server/ai-gateway/durability/__tests__/reaper.test.ts +227 -0
  831. package/src/server/ai-gateway/durability/pg-stream.ts +355 -0
  832. package/src/server/ai-gateway/durability/reaper-driver.ts +80 -0
  833. package/src/server/ai-gateway/durability/reaper-lazy.ts +97 -0
  834. package/src/server/ai-gateway/durability/reaper.ts +130 -0
  835. package/src/server/ai-gateway/embedding.ts +8 -4
  836. package/src/server/ai-gateway/env-key.ts +33 -0
  837. package/src/server/ai-gateway/index.ts +52 -2
  838. package/src/server/ai-gateway/kb-context-guard.ts +7 -7
  839. package/src/server/ai-gateway/knowledge-index-core.ts +14 -0
  840. package/src/server/ai-gateway/label-suggest.ts +23 -18
  841. package/src/server/ai-gateway/locks/__tests__/pg-lock.test.ts +133 -0
  842. package/src/server/ai-gateway/locks/pg-lock.ts +111 -0
  843. package/src/server/ai-gateway/media/__tests__/generation.spec.ts +52 -0
  844. package/src/server/ai-gateway/media/__tests__/index.test.ts +116 -0
  845. package/src/server/ai-gateway/media/__tests__/prototype-schema.spec.ts +36 -0
  846. package/src/server/ai-gateway/media/adapters.ts +128 -0
  847. package/src/server/ai-gateway/media/index.ts +231 -0
  848. package/src/server/ai-gateway/media/prototype-schema.ts +75 -0
  849. package/src/server/ai-gateway/media/recorder.ts +73 -0
  850. package/src/server/ai-gateway/memory/index.ts +76 -0
  851. package/src/server/ai-gateway/memory/pgvector-adapter.ts +243 -0
  852. package/src/server/ai-gateway/memory/scope.ts +54 -0
  853. package/src/server/ai-gateway/middlewares/compaction.ts +232 -0
  854. package/src/server/ai-gateway/middlewares/index.ts +11 -1
  855. package/src/server/ai-gateway/middlewares/logger.ts +4 -4
  856. package/src/server/ai-gateway/middlewares/plan-approval.ts +125 -0
  857. package/src/server/ai-gateway/middlewares/rate-limit.ts +4 -4
  858. package/src/server/ai-gateway/middlewares/tool-budget.ts +50 -0
  859. package/src/server/ai-gateway/middlewares/usage-log.ts +158 -0
  860. package/src/server/ai-gateway/model-fetch.ts +4 -2
  861. package/src/server/ai-gateway/persistence/index.ts +4 -2
  862. package/src/server/ai-gateway/persistence/interrupt-store.ts +78 -16
  863. package/src/server/ai-gateway/persistence/message-store.ts +35 -36
  864. package/src/server/ai-gateway/persistence/metadata-store.ts +62 -0
  865. package/src/server/ai-gateway/persistence/run-store.ts +67 -21
  866. package/src/server/ai-gateway/ports.ts +3 -1
  867. package/src/server/ai-gateway/prompts/builtin.ts +327 -0
  868. package/src/server/ai-gateway/prompts/definitions.ts +36 -0
  869. package/src/server/ai-gateway/prompts/index.ts +41 -0
  870. package/src/server/ai-gateway/prompts/registry.ts +248 -0
  871. package/src/server/ai-gateway/prompts/seed.ts +54 -0
  872. package/src/server/ai-gateway/prompts/types.ts +40 -0
  873. package/src/server/ai-gateway/rerank.ts +2 -1
  874. package/src/server/ai-gateway/runs/agent-runtime.ts +176 -0
  875. package/src/server/ai-gateway/runs/biz-keys.ts +54 -0
  876. package/src/server/{serverFns/agents → ai-gateway/runs}/resolve-overrides.ts +2 -8
  877. package/src/server/ai-gateway/sandbox/__tests__/harness-sandbox.test.ts +170 -0
  878. package/src/server/ai-gateway/sandbox/__tests__/instance-store.test.ts +130 -0
  879. package/src/server/ai-gateway/sandbox/__tests__/local-process.test.ts +316 -0
  880. package/src/server/ai-gateway/sandbox/__tests__/policy.test.ts +157 -0
  881. package/src/server/ai-gateway/sandbox/__tests__/provider.test.ts +102 -0
  882. package/src/server/ai-gateway/sandbox/__tests__/tool-bridge.test.ts +112 -0
  883. package/src/server/ai-gateway/sandbox/entitlement.ts +51 -0
  884. package/src/server/ai-gateway/sandbox/harness-sandbox.ts +345 -0
  885. package/src/server/ai-gateway/sandbox/instance-store.ts +91 -0
  886. package/src/server/ai-gateway/sandbox/local-process.ts +329 -0
  887. package/src/server/ai-gateway/sandbox/policy-levels.ts +3 -0
  888. package/src/server/ai-gateway/sandbox/policy.ts +267 -0
  889. package/src/server/ai-gateway/sandbox/provider.ts +128 -0
  890. package/src/server/ai-gateway/sandbox/tool-bridge.ts +78 -0
  891. package/src/server/ai-gateway/skills/builtin/competitive-analysis/SKILL.md +40 -0
  892. package/src/server/ai-gateway/skills/builtin/competitive-analysis/references/matrix-template.md +37 -0
  893. package/src/server/ai-gateway/skills/builtin/naming-advisor/SKILL.md +43 -0
  894. package/src/server/ai-gateway/skills/builtin/prd-review/SKILL.md +29 -0
  895. package/src/server/ai-gateway/skills/builtin/prd-review/references/review-checklist.md +46 -0
  896. package/src/server/ai-gateway/skills/builtin-source.ts +115 -0
  897. package/src/server/ai-gateway/skills/governance.ts +87 -0
  898. package/src/server/ai-gateway/skills/index.ts +137 -0
  899. package/src/server/ai-gateway/skills/user-source.ts +109 -0
  900. package/src/server/ai-gateway/source-mode.ts +62 -0
  901. package/src/server/ai-gateway/story-handler.ts +27 -21
  902. package/src/server/ai-gateway/story-prompt.ts +16 -25
  903. package/src/server/ai-gateway/tools/create-pr.ts +296 -0
  904. package/src/server/ai-gateway/tools/delegate-task.ts +91 -0
  905. package/src/server/ai-gateway/tools/delete-project.ts +3 -0
  906. package/src/server/ai-gateway/tools/index.ts +15 -0
  907. package/src/server/ai-gateway/tools/keys.ts +42 -0
  908. package/src/server/ai-gateway/tools/plan-submit.ts +113 -0
  909. package/src/server/ai-gateway/tools/plugin-lifecycle-defs.ts +122 -0
  910. package/src/server/ai-gateway/tools/plugin-lifecycle-server.ts +160 -0
  911. package/src/server/ai-gateway/tools/plugin-tools.ts +57 -0
  912. package/src/server/ai-gateway/tools/projection-namespace.ts +28 -0
  913. package/src/server/ai-gateway/tools/registry.ts +101 -0
  914. package/src/server/ai-gateway/tools/select.ts +70 -11
  915. package/src/server/ai-gateway/tools/server.ts +4 -2
  916. package/src/server/ai-gateway/tools/todo-write.ts +78 -0
  917. package/src/server/ai-gateway/types.ts +16 -0
  918. package/src/server/ai-gateway/unified-router.ts +99 -9
  919. package/src/server/ai-ports.ts +7 -3
  920. package/src/server/entitlements-token.ts +3 -15
  921. package/src/server/entitlements.ts +9 -0
  922. package/src/server/middlewares/security-headers.ts +60 -40
  923. package/src/server/resources.ts +54 -0
  924. package/src/server/serverFns/__tests__/ai-hosted-models.test.ts +68 -0
  925. package/src/server/serverFns/__tests__/ai-source-mode.test.ts +119 -0
  926. package/src/server/serverFns/__tests__/harness-plugins.test.ts +140 -0
  927. package/src/server/serverFns/__tests__/knowledge-index.test.ts +42 -4
  928. package/src/server/serverFns/__tests__/knowledge-search.test.ts +262 -0
  929. package/src/server/serverFns/activity.ts +1 -1
  930. package/src/server/serverFns/agents/agent-crud.ts +8 -1
  931. package/src/server/serverFns/agents/bindings.ts +113 -0
  932. package/src/server/serverFns/agents/skill-crud.ts +5 -1
  933. package/src/server/serverFns/ai/code-mode-readiness.ts +23 -0
  934. package/src/server/serverFns/ai/hosted-models.ts +1 -0
  935. package/src/server/serverFns/ai/search-capability.ts +23 -0
  936. package/src/server/serverFns/ai/source-mode.ts +1 -0
  937. package/src/server/serverFns/anyhub/app.ts +3 -1
  938. package/src/server/serverFns/anyhub/index.ts +3 -1
  939. package/src/server/serverFns/anyhub/install.ts +1 -1
  940. package/src/server/serverFns/anyhub/proxy.ts +1 -1
  941. package/src/server/serverFns/auth/email-verification.ts +3 -1
  942. package/src/server/serverFns/auth/forgot-password.ts +1 -1
  943. package/src/server/serverFns/auth/register.ts +2 -1
  944. package/src/server/serverFns/auth/reset-password.ts +2 -1
  945. package/src/server/serverFns/auth/setup.ts +1 -1
  946. package/src/server/serverFns/billing.ts +8 -1
  947. package/src/server/serverFns/changelog/fetch.ts +1 -1
  948. package/src/server/serverFns/changelog/subscribe.ts +2 -1
  949. package/src/server/serverFns/chat/conversations.ts +78 -1
  950. package/src/server/serverFns/chat/list-messages.ts +1 -1
  951. package/src/server/serverFns/design/settings.ts +3 -1
  952. package/src/server/serverFns/design.ts +4 -1
  953. package/src/server/serverFns/email-unsubscribe.ts +1 -1
  954. package/src/server/serverFns/harness/__tests__/attach-guards.spec.ts +45 -0
  955. package/src/server/serverFns/harness/__tests__/attach-prototype.spec.ts +69 -0
  956. package/src/server/serverFns/harness/__tests__/attach-to-kb.spec.ts +86 -0
  957. package/src/server/serverFns/harness/__tests__/attach-to-story.spec.ts +90 -0
  958. package/src/server/serverFns/harness/__tests__/cancel-run.test.ts +146 -0
  959. package/src/server/serverFns/harness/__tests__/gallery.spec.ts +126 -0
  960. package/src/server/serverFns/harness/__tests__/media-prototype.spec.ts +67 -0
  961. package/src/server/serverFns/harness/__tests__/media.spec.ts +43 -0
  962. package/src/server/serverFns/harness/__tests__/sandbox-policy.test.ts +199 -0
  963. package/src/server/serverFns/harness/__tests__/workspace-files.test.ts +224 -0
  964. package/src/server/serverFns/harness/attach-guards.ts +31 -0
  965. package/src/server/serverFns/harness/attach-prototype.ts +63 -0
  966. package/src/server/serverFns/harness/attach-to-kb.ts +80 -0
  967. package/src/server/serverFns/harness/attach-to-story.ts +74 -0
  968. package/src/server/serverFns/harness/cancel-run.ts +89 -0
  969. package/src/server/serverFns/{ai/execute.ts → harness/extract-attachment.ts} +19 -15
  970. package/src/server/serverFns/harness/gallery.ts +213 -0
  971. package/src/server/serverFns/harness/github-workspace.ts +202 -0
  972. package/src/server/serverFns/harness/media.ts +300 -0
  973. package/src/server/serverFns/harness/sandbox-policy.ts +88 -0
  974. package/src/server/serverFns/harness/search-mention-candidates.ts +53 -0
  975. package/src/server/serverFns/harness/workspace-files.ts +136 -0
  976. package/src/server/serverFns/iteration/__tests__/iteration-stories.test.ts +11 -1
  977. package/src/server/serverFns/iteration/__tests__/iteration-transfer.test.ts +11 -1
  978. package/src/server/serverFns/iteration/auto-schedule-internal.ts +3 -1
  979. package/src/server/serverFns/iteration/iteration-auto-schedule.ts +2 -1
  980. package/src/server/serverFns/iteration/iteration-burndown.ts +1 -1
  981. package/src/server/serverFns/iteration/iteration-crud.ts +8 -1
  982. package/src/server/serverFns/iteration/iteration-stories.ts +4 -1
  983. package/src/server/serverFns/iteration/transfer-internal.ts +1 -1
  984. package/src/server/serverFns/kb-doc-search.ts +2 -1
  985. package/src/server/serverFns/knowledge-index-utils.ts +26 -5
  986. package/src/server/serverFns/knowledge-index.ts +8 -4
  987. package/src/server/serverFns/knowledge-public/bookmarks/categories.ts +3 -1
  988. package/src/server/serverFns/knowledge-public/bookmarks/create.ts +1 -1
  989. package/src/server/serverFns/knowledge-public/bookmarks/delete.ts +1 -1
  990. package/src/server/serverFns/knowledge-public/bookmarks/detail.ts +1 -1
  991. package/src/server/serverFns/knowledge-public/bookmarks/favorite.ts +1 -1
  992. package/src/server/serverFns/knowledge-public/bookmarks/list.ts +1 -1
  993. package/src/server/serverFns/knowledge-public/bookmarks/share.ts +1 -1
  994. package/src/server/serverFns/knowledge-public/bookmarks/unshare.ts +1 -1
  995. package/src/server/serverFns/knowledge-public/bookmarks/update.ts +1 -1
  996. package/src/server/serverFns/knowledge-public/compliance/create.ts +1 -1
  997. package/src/server/serverFns/knowledge-public/compliance/delete.ts +1 -1
  998. package/src/server/serverFns/knowledge-public/compliance/detail.ts +1 -1
  999. package/src/server/serverFns/knowledge-public/compliance/list.ts +1 -1
  1000. package/src/server/serverFns/knowledge-public/compliance/public.ts +1 -1
  1001. package/src/server/serverFns/knowledge-public/compliance/share.ts +1 -1
  1002. package/src/server/serverFns/knowledge-public/compliance/unshare.ts +1 -1
  1003. package/src/server/serverFns/knowledge-public/compliance/update.ts +1 -1
  1004. package/src/server/serverFns/knowledge-public/dictionary/create.ts +1 -1
  1005. package/src/server/serverFns/knowledge-public/dictionary/delete.ts +1 -1
  1006. package/src/server/serverFns/knowledge-public/dictionary/detail.ts +1 -1
  1007. package/src/server/serverFns/knowledge-public/dictionary/list.ts +1 -1
  1008. package/src/server/serverFns/knowledge-public/dictionary/share.ts +1 -1
  1009. package/src/server/serverFns/knowledge-public/dictionary/unshare.ts +1 -1
  1010. package/src/server/serverFns/knowledge-public/dictionary/update.ts +1 -1
  1011. package/src/server/serverFns/knowledge-public/entity-tags.ts +1 -1
  1012. package/src/server/serverFns/knowledge-public/favorite.ts +2 -1
  1013. package/src/server/serverFns/knowledge-public/legal/create.ts +1 -1
  1014. package/src/server/serverFns/knowledge-public/legal/delete.ts +1 -1
  1015. package/src/server/serverFns/knowledge-public/legal/detail.ts +1 -1
  1016. package/src/server/serverFns/knowledge-public/legal/list.ts +1 -1
  1017. package/src/server/serverFns/knowledge-public/legal/public.ts +1 -1
  1018. package/src/server/serverFns/knowledge-public/legal/share.ts +1 -1
  1019. package/src/server/serverFns/knowledge-public/legal/unshare.ts +1 -1
  1020. package/src/server/serverFns/knowledge-public/legal/update.ts +1 -1
  1021. package/src/server/serverFns/knowledge.ts +56 -9
  1022. package/src/server/serverFns/notifications.ts +8 -1
  1023. package/src/server/serverFns/plugins/harness-plugins.ts +233 -0
  1024. package/src/server/serverFns/plugins/plugin-precheck.ts +82 -0
  1025. package/src/server/serverFns/project/module-overview.ts +2 -1
  1026. package/src/server/serverFns/project.ts +19 -1
  1027. package/src/server/serverFns/settings/account-team.ts +1 -1
  1028. package/src/server/serverFns/share/version.ts +1 -1
  1029. package/src/server/serverFns/sso.ts +1 -1
  1030. package/src/server/serverFns/story/__tests__/label-suggest-fn.test.ts +43 -21
  1031. package/src/server/serverFns/story/kb-general.ts +2 -2
  1032. package/src/server/serverFns/story/story-assoc.ts +14 -3
  1033. package/src/server/serverFns/story/story-attachments.ts +2 -1
  1034. package/src/server/serverFns/story/story-children.ts +1 -1
  1035. package/src/server/serverFns/story/story-comments.ts +4 -1
  1036. package/src/server/serverFns/story/story-crud/activities.ts +1 -1
  1037. package/src/server/serverFns/story/story-crud/archive.ts +2 -1
  1038. package/src/server/serverFns/story/story-crud/bulk.ts +4 -1
  1039. package/src/server/serverFns/story/story-crud/detail.ts +2 -1
  1040. package/src/server/serverFns/story/story-crud/label-suggest-core.ts +15 -6
  1041. package/src/server/serverFns/story/story-crud/label-upsert.ts +1 -1
  1042. package/src/server/serverFns/story/story-crud/labels.ts +3 -1
  1043. package/src/server/serverFns/story/story-crud.ts +6 -1
  1044. package/src/server/serverFns/story/story-dependencies.ts +4 -1
  1045. package/src/server/serverFns/story/story-groups.ts +4 -1
  1046. package/src/server/serverFns/story/story-links.ts +4 -1
  1047. package/src/server/serverFns/story/story-reactions.ts +4 -1
  1048. package/src/server/serverFns/story/story-search.ts +2 -1
  1049. package/src/server/serverFns/story/story-transfer.ts +7 -2
  1050. package/src/server/serverFns/story/story-tree.ts +5 -1
  1051. package/src/server/serverFns/story/types.ts +2 -1
  1052. package/src/server/serverFns/story-display-options.ts +3 -1
  1053. package/src/server/serverFns/story-view.ts +5 -1
  1054. package/src/server/serverFns/team.ts +19 -1
  1055. package/src/server/serverFns/translation.ts +7 -7
  1056. package/src/server/serverFns/user/avatar.ts +1 -1
  1057. package/src/server/serverFns/user/settings.ts +1 -1
  1058. package/src/server/serverFns/user/update-locale.ts +1 -1
  1059. package/src/server/serverFns/web-search.ts +20 -4
  1060. package/src/server/serverFns/workspace-kb.ts +9 -1
  1061. package/src/server/serverFns/workspace.ts +16 -1
  1062. package/src/start.ts +4 -0
  1063. package/src/styles/globals.css +124 -84
  1064. package/vite.shared.ts +23 -1
  1065. package/src/components/ai/global-chat-panel.tsx +0 -137
  1066. package/src/components/chat/__tests__/ai-conversation.test.tsx +0 -79
  1067. package/src/components/chat/ai-conversation.tsx +0 -332
  1068. package/src/components/chat/ai-message/hooks/use-streaming-text.ts +0 -73
  1069. package/src/components/chat/ai-message/index.tsx +0 -128
  1070. package/src/components/chat/chat-thread-page.tsx +0 -164
  1071. package/src/components/chat/interrupt-approval.tsx +0 -120
  1072. package/src/components/devtools/ai-chat-panel.tsx +0 -54
  1073. package/src/components/devtools/devtools-panel.tsx +0 -100
  1074. package/src/components/devtools/session-panel.tsx +0 -102
  1075. package/src/components/ui/sonner.tsx +0 -37
  1076. package/src/paraglide/messages/chat_systemprompt1.js +0 -30
  1077. package/src/paraglide/messages/common_nav_chat.js +0 -29
  1078. package/src/paraglide/messages/en.js +0 -17242
  1079. package/src/paraglide/messages/zh.js +0 -17240
  1080. package/src/routes/_nav/agents/route.tsx +0 -12
  1081. package/src/routes/_nav/chat/route.lazy.tsx +0 -427
  1082. /package/src/components/{chat → ai}/ai-prompt-input/components/context-badge.tsx +0 -0
  1083. /package/src/components/{chat → ai}/ai-prompt-input/constants.tsx +0 -0
  1084. /package/src/components/{chat → ai}/ai-prompt-input/types.ts +0 -0
  1085. /package/src/components/{chat → ai}/ai-prompt-input.tsx +0 -0
  1086. /package/src/components/{chat → harness}/ai-chat-history/components/conversation-header.tsx +0 -0
  1087. /package/src/components/{chat → harness}/ai-chat-history/components/conversation-search.tsx +0 -0
  1088. /package/src/components/{chat → harness}/ai-chat-history/components/empty-state.tsx +0 -0
  1089. /package/src/components/{chat → harness}/ai-chat-history/utils/group-conversations.ts +0 -0
  1090. /package/src/components/{chat → harness}/ai-chat-history.tsx +0 -0
  1091. /package/src/components/{chat → harness}/ai-citations/components/citation-item.tsx +0 -0
  1092. /package/src/components/{chat → harness}/ai-citations/components/citations-list.tsx +0 -0
  1093. /package/src/components/{chat → harness}/ai-citations/components/inline-citation.tsx +0 -0
  1094. /package/src/components/{chat → harness}/ai-citations/components/source-components.tsx +0 -0
  1095. /package/src/components/{chat → harness}/ai-citations/index.tsx +0 -0
  1096. /package/src/components/{chat → harness}/ai-citations/types.ts +0 -0
  1097. /package/src/components/{chat → harness}/ai-citations/utils.ts +0 -0
  1098. /package/src/components/{chat → harness}/ai-citations.tsx +0 -0
  1099. /package/src/components/{chat → harness}/ai-message/components/code-block.tsx +0 -0
  1100. /package/src/components/{chat → harness}/ai-message/components/markdown-content.tsx +0 -0
  1101. /package/src/components/{chat → harness}/ai-message/components/streaming-indicator.tsx +0 -0
  1102. /package/src/components/{chat → harness}/ai-message/utils/dom-utils.ts +0 -0
  1103. /package/src/components/{chat → harness}/ai-thinking.tsx +0 -0
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@allbluecn/web-app",
3
- "version": "0.12.0",
3
+ "version": "0.12.2",
4
4
  "license": "AGPL-3.0-or-later",
5
5
  "type": "module",
6
6
  "files": [
@@ -60,29 +60,47 @@
60
60
  "./ai-gateway/tools": {
61
61
  "types": "./src/server/ai-gateway/tools.ts",
62
62
  "default": "./src/server/ai-gateway/tools.ts"
63
+ },
64
+ "./ai-gateway/prompts/definitions": {
65
+ "types": "./src/server/ai-gateway/prompts/definitions.ts",
66
+ "default": "./src/server/ai-gateway/prompts/definitions.ts"
63
67
  }
64
68
  },
65
69
  "publishConfig": {
66
70
  "access": "public"
67
71
  },
68
72
  "dependencies": {
73
+ "@allblue/devframe-auth": "0.0.1",
74
+ "@allblue/devframe-build": "0.0.1",
75
+ "@allblue/devframe-database": "0.0.1",
76
+ "@allblue/devframe-devserver": "0.0.1",
77
+ "@allblue/devframe-feature-gate": "0.0.1",
78
+ "@allblue/devframe-hub": "0.0.1",
79
+ "@allblue/devframe-hydration": "0.0.1",
80
+ "@allblue/devframe-i18n": "0.0.1",
81
+ "@allblue/devframe-rq": "0.0.1",
69
82
  "@allbluecn/database": "0.8.0",
70
83
  "@allbluecn/kernel": "0.8.0",
71
84
  "@ariakit/react": "^0.4.28",
72
85
  "@auth/core": "^0.41.2",
73
86
  "@auth/prisma-adapter": "^2.11.2",
87
+ "@aws-sdk/client-bedrock-runtime": "3.1131.0",
88
+ "@aws-sdk/credential-providers": "3.1131.0",
74
89
  "@base-ui/react": "^1.4.1",
90
+ "@devframes/vite": "1.0.0",
75
91
  "@dnd-kit/dom": "0.5.0",
76
92
  "@dnd-kit/react": "^0.5.0",
77
93
  "@floating-ui/react": "^0.27.19",
78
94
  "@fontsource-variable/geist": "^5.3.0",
79
95
  "@fontsource-variable/geist-mono": "^5.3.0",
96
+ "@fontsource-variable/inter": "^5.3.0",
80
97
  "@fumadocs/language": "^0.2.4",
81
98
  "@iconify/react": "^6.0.2",
82
99
  "@lobehub/icons": "^5.16.0",
83
100
  "@lucide/lab": "^0.2.0",
84
101
  "@open-file-viewer/core": "^0.1.43",
85
102
  "@open-file-viewer/react": "^0.1.43",
103
+ "@opentelemetry/api": "^1.9.1",
86
104
  "@phosphor-icons/react": "^2.1.10",
87
105
  "@prisma/client": "^7.8.0",
88
106
  "@radix-ui/react-dialog": "^1.1.23",
@@ -92,16 +110,34 @@
92
110
  "@radix-ui/react-visually-hidden": "^1.2.11",
93
111
  "@react-email/components": "^1.0.12",
94
112
  "@react-email/render": "^2.1.0",
95
- "@tanstack/ai": "^0.52.0",
96
- "@tanstack/ai-anthropic": "^0.18.3",
97
- "@tanstack/ai-gemini": "^0.26.4",
98
- "@tanstack/ai-grok": "^0.18.3",
99
- "@tanstack/ai-groq": "^0.7.3",
100
- "@tanstack/ai-ollama": "^0.10.3",
101
- "@tanstack/ai-openai": "^0.22.3",
102
- "@tanstack/ai-openrouter": "^0.19.5",
103
- "@tanstack/ai-persistence": "^0.5.4",
104
- "@tanstack/ai-react": "^0.22.4",
113
+ "@shadcn/react": "^0.3.1",
114
+ "@tanstack/ai": "0.54.0",
115
+ "@tanstack/ai-acp": "0.3.10",
116
+ "@tanstack/ai-anthropic": "0.18.6",
117
+ "@tanstack/ai-bedrock": "0.3.8",
118
+ "@tanstack/ai-claude-code": "0.6.5",
119
+ "@tanstack/ai-client": "0.31.1",
120
+ "@tanstack/ai-code-mode": "0.4.9",
121
+ "@tanstack/ai-codex": "0.5.5",
122
+ "@tanstack/ai-devtools-core": "0.5.13",
123
+ "@tanstack/ai-event-client": "0.11.3",
124
+ "@tanstack/ai-gemini": "0.29.2",
125
+ "@tanstack/ai-grok": "0.18.5",
126
+ "@tanstack/ai-groq": "0.7.5",
127
+ "@tanstack/ai-isolate-node": "0.1.51",
128
+ "@tanstack/ai-memory": "0.1.11",
129
+ "@tanstack/ai-mistral": "0.6.2",
130
+ "@tanstack/ai-ollama": "0.11.2",
131
+ "@tanstack/ai-openai": "0.22.6",
132
+ "@tanstack/ai-opencode": "0.4.5",
133
+ "@tanstack/ai-openrouter": "0.19.9",
134
+ "@tanstack/ai-persistence": "0.5.7",
135
+ "@tanstack/ai-react": "0.24.1",
136
+ "@tanstack/ai-sandbox": "0.5.7",
137
+ "@tanstack/ai-sandbox-daytona": "0.3.3",
138
+ "@tanstack/ai-sandbox-vercel": "0.2.4",
139
+ "@tanstack/ai-skills": "0.1.3",
140
+ "@tanstack/ai-utils": "0.4.0",
105
141
  "@tanstack/db": "0.8.6",
106
142
  "@tanstack/hotkeys": "^0.8.0",
107
143
  "@tanstack/pacer": "^0.22.0",
@@ -118,37 +154,37 @@
118
154
  "@tanstack/react-table": "^9.2.3",
119
155
  "@tanstack/react-virtual": "^3.14.10",
120
156
  "@tanstack/store": "^0.11.1",
121
- "@tiptap/core": "^3.27.4",
122
- "@tiptap/extension-code-block-lowlight": "^3.27.4",
123
- "@tiptap/extension-color": "^3.27.4",
124
- "@tiptap/extension-drag-handle-react": "^3.27.4",
125
- "@tiptap/extension-emoji": "^3.27.4",
126
- "@tiptap/extension-highlight": "^3.27.4",
127
- "@tiptap/extension-horizontal-rule": "^3.27.4",
128
- "@tiptap/extension-image": "^3.27.4",
129
- "@tiptap/extension-list": "^3.27.4",
130
- "@tiptap/extension-mathematics": "^3.27.4",
131
- "@tiptap/extension-mention": "^3.27.4",
132
- "@tiptap/extension-placeholder": "^3.27.4",
133
- "@tiptap/extension-subscript": "^3.27.4",
134
- "@tiptap/extension-superscript": "^3.27.4",
135
- "@tiptap/extension-table": "^3.27.4",
136
- "@tiptap/extension-table-cell": "^3.27.4",
137
- "@tiptap/extension-table-header": "^3.27.4",
138
- "@tiptap/extension-table-of-contents": "^3.27.4",
139
- "@tiptap/extension-table-row": "^3.27.4",
140
- "@tiptap/extension-task-item": "^3.27.4",
141
- "@tiptap/extension-task-list": "^3.27.4",
142
- "@tiptap/extension-text-align": "^3.27.4",
143
- "@tiptap/extension-text-style": "^3.27.4",
144
- "@tiptap/extension-typography": "^3.27.4",
145
- "@tiptap/extension-unique-id": "^3.27.4",
146
- "@tiptap/extensions": "^3.27.4",
147
- "@tiptap/markdown": "^3.27.4",
148
- "@tiptap/pm": "^3.27.4",
149
- "@tiptap/react": "^3.27.4",
150
- "@tiptap/starter-kit": "^3.27.4",
151
- "@tiptap/suggestion": "^3.27.4",
157
+ "@tiptap/core": "^3.31.3",
158
+ "@tiptap/extension-code-block-lowlight": "^3.31.3",
159
+ "@tiptap/extension-color": "^3.31.3",
160
+ "@tiptap/extension-drag-handle-react": "^3.31.3",
161
+ "@tiptap/extension-emoji": "^3.31.3",
162
+ "@tiptap/extension-highlight": "^3.31.3",
163
+ "@tiptap/extension-horizontal-rule": "^3.31.3",
164
+ "@tiptap/extension-image": "^3.31.3",
165
+ "@tiptap/extension-list": "^3.31.3",
166
+ "@tiptap/extension-mathematics": "^3.31.3",
167
+ "@tiptap/extension-mention": "^3.31.3",
168
+ "@tiptap/extension-placeholder": "^3.31.3",
169
+ "@tiptap/extension-subscript": "^3.31.3",
170
+ "@tiptap/extension-superscript": "^3.31.3",
171
+ "@tiptap/extension-table": "^3.31.3",
172
+ "@tiptap/extension-table-cell": "^3.31.3",
173
+ "@tiptap/extension-table-header": "^3.31.3",
174
+ "@tiptap/extension-table-of-contents": "^3.31.3",
175
+ "@tiptap/extension-table-row": "^3.31.3",
176
+ "@tiptap/extension-task-item": "^3.31.3",
177
+ "@tiptap/extension-task-list": "^3.31.3",
178
+ "@tiptap/extension-text-align": "^3.31.3",
179
+ "@tiptap/extension-text-style": "^3.31.3",
180
+ "@tiptap/extension-typography": "^3.31.3",
181
+ "@tiptap/extension-unique-id": "^3.31.3",
182
+ "@tiptap/extensions": "^3.31.3",
183
+ "@tiptap/markdown": "^3.31.3",
184
+ "@tiptap/pm": "^3.31.3",
185
+ "@tiptap/react": "^3.31.3",
186
+ "@tiptap/starter-kit": "^3.31.3",
187
+ "@tiptap/suggestion": "^3.31.3",
152
188
  "@vercel/analytics": "^2.0.1",
153
189
  "@vercel/speed-insights": "^2.0.0",
154
190
  "@zumer/snapdom": "^2.12.9",
@@ -170,7 +206,7 @@
170
206
  "lowlight": "^3.3.0",
171
207
  "lucide": "^1.43.0",
172
208
  "lucide-react": "^1.43.0",
173
- "mind-elixir": "^5.12.2",
209
+ "mind-elixir": "^5.15.1",
174
210
  "morphicons": "^1.7.1",
175
211
  "motion": "^12.42.2",
176
212
  "nanoid": "^5.1.11",
@@ -179,6 +215,7 @@
179
215
  "nodemailer": "^10.0.3",
180
216
  "ogl": "^1.0.11",
181
217
  "pdfjs-dist": "^6.3.289",
218
+ "pg": "^8.22.0",
182
219
  "pinyin-pro": "^3.29.3",
183
220
  "prisma": "^7.8.0",
184
221
  "radix-ui": "^1.4.3",
@@ -191,7 +228,6 @@
191
228
  "react-textarea-autosize": "^8.5.9",
192
229
  "remark-gfm": "^4.0.1",
193
230
  "shiki": "^4.2.0",
194
- "sonner": "^2.0.7",
195
231
  "sqlite-vec": "^0.1.9",
196
232
  "start-authjs": "^1.0.2",
197
233
  "tailwind-merge": "^3.5.0",
@@ -209,6 +245,9 @@
209
245
  "@playwright/mcp": "^0.0.75",
210
246
  "@playwright/test": "^1.60.0",
211
247
  "@tailwindcss/vite": "^4.3.2",
248
+ "@tanstack/devtools": "0.14.2",
249
+ "@tanstack/devtools-ui": "0.7.1",
250
+ "@tanstack/react-ai-devtools": "0.2.71",
212
251
  "@tanstack/react-query-devtools": "5.102.8",
213
252
  "@tanstack/react-router-devtools": "1.167.1",
214
253
  "@testing-library/jest-dom": "7.0.1",
@@ -219,6 +258,7 @@
219
258
  "@types/is-hotkey": "^0.1.10",
220
259
  "@types/mdx": "^2.0.14",
221
260
  "@types/node": "^24.13.3",
261
+ "@types/pg": "^8.20.0",
222
262
  "@types/react": "^19",
223
263
  "@types/react-dom": "^19",
224
264
  "@vitejs/plugin-react": "^6.0.1",
@@ -230,7 +270,7 @@
230
270
  "msw": "2.15.0",
231
271
  "playwright": "^1.60.0",
232
272
  "sass": "^1.100.0",
233
- "shadcn": "^4.15.0",
273
+ "shadcn": "^4.21.0",
234
274
  "tailwindcss": "^4",
235
275
  "tsx": "^4.22.0",
236
276
  "typescript": "^7",
@@ -0,0 +1,17 @@
1
+ <!DOCTYPE html>
2
+ <html lang="zh-CN">
3
+ <head>
4
+ <meta charset="utf-8" />
5
+ <meta name="viewport" content="width=device-width, initial-scale=1" />
6
+ <title>AI Chat - AllBlue Devframe</title>
7
+ <style>
8
+ html, body { margin: 0; padding: 0; height: 100%; width: 100%; background: transparent; }
9
+ body { font-family: ui-sans-serif, system-ui, -apple-system, sans-serif; }
10
+ </style>
11
+ </head>
12
+ <body>
13
+ <div id="root"></div>
14
+ <script type="module">import '/@react-refresh';</script>
15
+ <script type="module" src="/src/devframe-docks/ai-chat-iframe.tsx"></script>
16
+ </body>
17
+ </html>
@@ -0,0 +1,17 @@
1
+ <!DOCTYPE html>
2
+ <html lang="zh-CN">
3
+ <head>
4
+ <meta charset="utf-8" />
5
+ <meta name="viewport" content="width=device-width, initial-scale=1" />
6
+ <title>Session - AllBlue Devframe</title>
7
+ <style>
8
+ html, body { margin: 0; padding: 0; height: 100%; width: 100%; background: transparent; }
9
+ body { font-family: ui-sans-serif, system-ui, -apple-system, sans-serif; }
10
+ </style>
11
+ </head>
12
+ <body>
13
+ <div id="root"></div>
14
+ <script type="module">import '/@react-refresh';</script>
15
+ <script type="module" src="/src/devframe-docks/session-iframe.tsx"></script>
16
+ </body>
17
+ </html>
@@ -143,3 +143,70 @@
143
143
  src: url(/fonts/NGSwv5HMAFg6IuGlBNMjxLsH8ag.woff2) format('woff2');
144
144
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
145
145
  }
146
+
147
+ /* ===== AllBlue 品牌字体(可自由调试字体/字重) =====
148
+ 全局 CSS 变量(在浏览器 devtools 里改 :root 即可切换):
149
+ - --brand-font-en-family: 英文品牌字体族(默认 'Buttersans Rounded',可改 'Trap')
150
+ - --brand-font-en-weight: 英文品牌字重(300~900)
151
+ - --brand-font-zh-family: 中文品牌字体族(默认系统兜底)
152
+ - --brand-font-zh-weight: 中文品牌字重
153
+ 中文品牌字体文件需在下方补 @font-face。
154
+ 类名:.font-brand(自动随 lang 切换)/ .font-trap-* = 强制 Trap 英文族 */
155
+ :root {
156
+ --brand-font-file-en: '/fonts/buttersans-Rounded.otf';
157
+ --brand-font-en-weight: 600;
158
+ --brand-font-en-family: 'Buttersans Rounded';
159
+ --brand-font-zh-family: 'PingFang SC', 'Noto Sans SC', 'Source Han Sans SC', 'Microsoft YaHei', sans-serif;
160
+ --brand-font-zh-weight: 500;
161
+ }
162
+
163
+ @font-face {
164
+ font-family: 'Buttersans Rounded';
165
+ font-style: normal;
166
+ font-weight: 100 900;
167
+ src: url(/fonts/buttersans-Rounded.otf) format('opentype');
168
+ }
169
+
170
+ /* Trap 字体族(7 个字重,供调试替换使用) */
171
+ @font-face {
172
+ font-family: 'Trap';
173
+ font-style: normal;
174
+ font-weight: 300;
175
+ src: url(/fonts/Trap-font/Trap-Light.otf) format('opentype');
176
+ }
177
+ @font-face {
178
+ font-family: 'Trap';
179
+ font-style: normal;
180
+ font-weight: 400;
181
+ src: url(/fonts/Trap-font/Trap-Regular.otf) format('opentype');
182
+ }
183
+ @font-face {
184
+ font-family: 'Trap';
185
+ font-style: normal;
186
+ font-weight: 500;
187
+ src: url(/fonts/Trap-font/Trap-Medium.otf) format('opentype');
188
+ }
189
+ @font-face {
190
+ font-family: 'Trap';
191
+ font-style: normal;
192
+ font-weight: 600;
193
+ src: url(/fonts/Trap-font/Trap-SemiBold.otf) format('opentype');
194
+ }
195
+ @font-face {
196
+ font-family: 'Trap';
197
+ font-style: normal;
198
+ font-weight: 700;
199
+ src: url(/fonts/Trap-font/Trap-Bold.otf) format('opentype');
200
+ }
201
+ @font-face {
202
+ font-family: 'Trap';
203
+ font-style: normal;
204
+ font-weight: 800;
205
+ src: url(/fonts/Trap-font/Trap-ExtraBold.otf) format('opentype');
206
+ }
207
+ @font-face {
208
+ font-family: 'Trap';
209
+ font-style: normal;
210
+ font-weight: 900;
211
+ src: url(/fonts/Trap-font/Trap-Black.otf) format('opentype');
212
+ }
@@ -0,0 +1,11 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <svg width="162px" height="152px" viewBox="0 0 162 152" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
3
+ <title>logo</title>
4
+ <g id="页面-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd" stroke-linejoin="round">
5
+ <g id="画框-6" transform="translate(-111, -174)" stroke="#000000">
6
+ <g id="logo" transform="translate(118.6038, 182)">
7
+ <path d="M145.817863,66.5572555 C145.83384,66.8125422 145.851415,67.0662433 145.867392,67.3199444 C145.912127,68.8706923 145.955265,70.4214402 146,71.9706024 C145.977632,72.2227179 145.953667,72.4748333 145.931299,72.7269488 C145.908932,73.3215607 145.886564,73.9177583 145.864196,74.5139558 C145.84822,75.1608936 145.830645,75.8062457 145.814668,76.4531835 C144.573264,97.2154463 133.621107,117.048529 115.309995,127.627864 C114.012672,128.377868 112.649844,128.943939 111.306187,129.568677 C108.914447,130.681791 106.530695,131.748921 104.028715,132.635289 C98.9943971,134.420711 93.6980587,135.257924 88.4160995,135.850951 C88.2020091,135.871564 87.9863212,135.892177 87.7722309,135.91279 L85.6968331,135.979387 C85.1360443,135.985729 84.5752555,135.992072 84.0128691,136 C83.1533125,135.969873 82.2937559,135.939746 81.4326016,135.909619 C81.0843054,135.893763 80.7360093,135.876321 80.3877131,135.858879 C80.0841522,135.835094 79.7789937,135.809724 79.4754328,135.784354 C79.2613425,135.766912 79.0472522,135.74947 78.8347596,135.732028 C73.6342825,135.199256 68.5903788,134.076629 63.7701517,132.069219 C63.3355803,131.888457 62.8578714,131.804418 62.4312884,131.610971 C62.1676698,131.492049 61.9823379,131.276403 61.7155238,131.155895 C60.0331575,130.40272 58.2772975,129.766881 56.6875971,128.820259 C55.6554901,128.205034 54.4060975,127.044352 53.3500252,126.619402 C52.329102,126.207138 51.1180539,126.154812 50.0507978,125.883669 C48.339673,125.449206 46.6253529,124.81971 45.0244687,124.072878 C34.9366615,119.369894 26.3890263,111.492475 21.9410606,101.235023 C20.0142479,96.7889113 18.7648552,92.1620377 17.9068963,87.4035567 C16.7661465,81.0816427 16.6479175,74.4426024 13.8743297,68.5155107 C12.7751198,66.1687757 11.3979121,64.0979406 9.40399641,62.4076571 C6.89722265,60.2829105 4.43678186,59.2189515 2.19362675,56.5804602 C1.41395461,55.663965 0.74612068,54.665017 0.345100786,53.5249477 C0.206101858,53.1285398 0.16296426,52.6845629 0,52.3103538 L0,50.1047399 C0.193320348,49.6639343 0.220481058,49.1073775 0.354686919,48.6301024 C0.674224683,47.5043038 1.08962378,46.3975328 1.58810269,45.3367451 C3.61077674,41.0301692 6.13352739,36.9392391 8.87036834,33.0417562 C22.2558053,13.9808764 45.9894728,1.46707022 69.251822,0.203321678 C69.5505898,0.18746536 69.84776,0.173194674 70.1465278,0.158923988 C75.2271782,-0.302494865 80.352564,0.323829694 85.3804907,0.977109995 C88.8682454,1.43060069 92.2697249,2.26939991 95.6376529,3.28420426 C98.7419623,4.22131265 101.790353,5.26782964 104.757261,6.58866092 C119.118886,12.9787571 130.908231,24.6315651 137.936465,38.550241 C140.5391,43.7019588 142.780657,49.3388798 144.034843,54.9742152 C144.888009,58.8082729 145.408855,62.6629438 145.817863,66.5572555 Z M78.8347596,28.7399371 C79.0520453,28.7224952 79.2709286,28.7066389 79.4882143,28.6891969 L83.361012,28.6891969 C83.7077105,28.7066389 84.054409,28.7224952 84.4011074,28.7383515 C89.7373881,29.1379307 95.0289335,30.2558011 99.9258497,32.4534868 C101.459631,33.141651 102.99501,33.9233675 104.436125,34.7875368 C105.196625,35.2426131 105.909194,35.9387055 106.738395,36.2447324 C107.602745,35.6770762 109.139721,32.9672315 109.706901,31.9793829 C112.349478,27.3762938 113.904029,22.1643221 113.376792,16.8254998 C113.354424,16.617782 113.333654,16.4116499 113.312884,16.2039321 C113.276138,15.739342 113.287321,14.9925094 112.994944,14.6008584 C112.579545,14.0443016 111.558622,13.6415512 110.97227,13.267342 C109.488017,12.3238911 107.995776,11.3851971 106.431639,10.5765249 C99.6877941,7.08496368 92.2585411,4.76676999 84.752599,3.66792715 C83.386575,3.46655192 82.0269418,3.22395025 80.6433433,3.16369624 C80.4276553,3.14466866 80.213565,3.12405545 79.9994747,3.10344223 C78.791622,3.0368457 77.5853669,2.97183479 76.3791119,2.90523826 C76.1170909,2.88779631 75.8566676,2.87035436 75.5962443,2.85449804 C72.0046399,2.52151536 68.3475301,2.94012216 64.7846841,3.36507148 C59.3924843,4.00725236 54.5482918,5.04266992 49.3685846,6.65842872 C47.3586921,7.28475328 45.3344203,8.00463012 43.4044122,8.84342934 C42.8979449,9.06224653 41.7971373,9.32387577 41.5990239,9.82176416 C42.3036046,10.2689123 43.3868377,10.2895255 44.1936705,10.5289559 C45.7993478,11.0062311 47.3826574,11.7578206 48.796612,12.6489456 C53.746252,15.7678834 57.7836117,19.7779462 60.3734652,25.0612714 C61.0588737,26.4566273 61.7394892,27.8900385 62.2411635,29.3630904 C62.5527128,30.2795856 62.6757348,31.2975612 63.0224333,32.1823438 C63.5720383,32.1791725 64.1519993,31.8144772 64.6760412,31.625787 C65.9893414,31.1532687 67.3282047,30.7013637 68.6782517,30.3414252 C72.0094329,29.4534714 75.3997286,28.9936382 78.8347596,28.7399371 Z M29.8608041,85.705345 C29.8400341,85.4104175 29.8192642,85.1139044 29.7984942,84.8173912 C29.8288503,84.2322931 29.7265982,83.6551231 29.7377821,83.0716106 C29.7809197,80.7914721 29.8895625,78.4494939 30.2122956,76.1915543 C31.8467313,64.759149 36.4209144,54.363747 44.1920728,45.7347387 C44.9621588,44.8800832 45.6970957,43.9651736 46.53748,43.1787003 C49.5043882,40.4006734 52.6662144,37.8367067 56.2050951,35.8086837 C57.3841894,35.1332045 58.5505023,34.4275984 59.7775273,33.8377433 C60.4325797,33.5237883 61.340067,33.339855 61.8070884,32.7674419 C61.8385459,31.2785336 60.3191438,27.986762 59.6225515,26.5723785 C56.8409752,20.9291149 52.7301219,16.0707391 47.0998665,13.043768 C45.4350747,12.1494716 43.6919962,11.4406942 41.8834125,10.8857231 C41.2427393,10.6891047 40.3480335,10.3545364 39.688188,10.5527404 C38.964435,10.769972 38.2167166,11.2916448 37.5408943,11.6325557 C35.4303473,12.6965146 33.4428224,13.9507494 31.4760675,15.2509674 C30.2059049,16.0913523 28.8766278,16.8397705 27.6416143,17.7388237 C19.566895,23.6104183 12.5434549,31.0977716 7.61298724,39.7521499 C6.44347902,41.8039575 5.25320085,43.8113673 4.31056444,45.9836829 C3.60758136,47.602613 2.60263509,50.1586514 2.89181677,51.9171171 C3.34236502,54.6697739 6.55371955,56.8880728 8.7058064,58.3436828 C11.4937734,60.2305846 14.0404894,62.5773197 15.7228557,65.517081 C19.6212164,72.3368834 19.4918036,80.6440083 21.0223895,88.1297761 C21.6742466,91.3105534 22.308529,94.5087728 23.4604627,97.5595284 C26.2308551,104.902589 31.1485413,111.586027 37.5121359,116.239857 C39.5012585,117.695467 41.4919787,119.016298 43.7095708,120.115141 C44.3646232,120.43861 45.4782123,121.290094 46.1716093,121.109332 C45.8568646,120.459223 44.4333238,119.312811 43.8597536,118.683315 C42.1006982,116.748844 40.3624127,114.720821 38.8989298,112.550091 C33.2047668,104.112945 30.6628439,95.7756926 29.8608041,85.705345 Z M114.715655,18.3683195 C114.720448,18.8392522 114.723644,19.3101848 114.726839,19.7811175 C114.605415,21.4349314 114.512749,23.0871598 114.150073,24.714018 C113.544549,27.4349622 112.271191,30.019542 110.985052,32.4756856 C110.50894,33.3842527 109.957738,34.2563501 109.313869,35.0555086 C108.834563,35.6501205 108.09004,36.3382847 107.874352,37.0660897 C108.68438,37.9350159 109.78359,38.5882962 110.663916,39.4001397 C112.566764,41.1586054 114.309842,43.0788055 115.929899,45.0973147 C119.749973,49.8557958 122.525158,55.7924012 123.769758,61.7385204 C124.233087,63.9441343 124.421615,66.1323061 124.704406,68.3569476 C124.712394,69.2131887 124.720383,70.0710155 124.729969,70.9272567 C124.696417,71.3189078 124.664463,71.7089732 124.63251,72.1006242 C124.613337,72.4383638 124.594165,72.7745177 124.576591,73.1122573 C124.595763,73.3865716 124.589372,73.3913285 124.811451,73.5340354 C125.239631,73.5514773 125.667812,73.5705049 126.095993,73.5879469 C127.976472,73.7290681 129.914469,73.7798083 131.793351,73.5911181 C132.100107,73.5736762 132.406863,73.5562342 132.712022,73.5403779 C135.893021,73.5372066 139.700313,72.6809655 142.649647,71.5060123 C143.023506,70.3167885 142.708761,68.7533555 142.656037,67.5213196 C142.52982,64.5625307 142.223064,61.559344 141.614344,58.6576379 C139.78499,49.9461768 136.651923,41.4836599 131.836489,33.9439807 C129.807424,30.7679602 127.648946,27.50473 124.97122,24.8170841 C122.595456,22.4322938 120.246854,20.106172 117.641023,17.9608122 C116.982776,17.4201117 115.225318,15.7837397 114.506358,15.69653 C114.576656,16.587655 114.646955,17.4771945 114.715655,18.3683195 Z M82.2010899,57.528668 C82.9775667,57.528668 83.7540435,57.5270824 84.5305202,57.5270824 C90.0297652,58.1882908 95.2526099,60.6713902 97.6747062,65.913489 C98.553435,67.8130759 98.9991902,69.7729168 99.318728,71.8263099 C99.3379002,72.0467127 99.3586702,72.2671156 99.3794402,72.4875184 C99.3810378,72.8220867 99.3826355,73.156655 99.3826355,73.4928089 L99.3155326,74.2681829 C98.8202491,79.5261379 95.0768642,85.0790205 89.516907,85.9701456 C88.3090543,86.1635926 86.944628,86.1857915 85.7527522,85.8575657 C81.3239588,84.633458 78.6094855,80.0842803 81.3031888,75.8902842 C81.8847475,74.9833028 83.0318881,73.8781175 84.202994,74.5298121 C84.4346589,74.6582483 84.6663238,74.883408 84.7446105,75.1434516 C84.9091725,75.6952515 84.4266705,76.0932451 84.1374888,76.5086806 C83.669366,77.1809885 83.3737935,77.8184125 83.3258629,78.642941 C83.3258629,78.9886088 83.3242652,79.3342765 83.3242652,79.6799442 C83.6326191,83.4363059 87.853713,83.7819737 90.6560592,82.5927498 C93.912149,81.2100789 95.8517432,77.385535 96.0961896,74.0176531 C96.0977873,73.3691297 96.0977873,72.7190206 96.0977873,72.0704972 C96.0897989,71.1175325 95.8405594,70.1867667 95.5977107,69.2702715 C94.9474514,66.8141278 93.527106,64.3785974 91.4612943,62.8262639 C87.9943096,60.2194852 82.8721192,59.6026744 78.7756451,60.7903126 C71.92156,62.7771093 66.9719201,68.8548359 65.1553479,75.520832 C64.441181,78.1418814 64.1424132,81.0055324 64.2846075,83.7137915 C64.3868596,85.6609474 64.8613731,87.6731141 65.4589088,89.525132 C69.0600994,100.702251 79.9419579,107.027336 91.5236042,106.107669 C91.7360968,106.087056 91.9501871,106.068029 92.1626797,106.047415 C93.5382898,106.015703 94.9602329,105.63198 96.2847169,105.287898 C98.9304896,104.598148 101.336609,103.71178 103.723556,102.371921 C114.749207,96.1816143 120.938653,85.1281751 121.27257,72.6619379 C121.306122,71.442587 121.512223,70.2200649 121.398788,68.9991284 C121.379615,68.5313671 121.362041,68.06202 121.344466,67.592673 C121.320501,67.1629668 121.296535,66.731675 121.274168,66.3003831 L121.216651,65.6534453 C121.03771,62.4092427 120.032764,59.3251888 118.882428,56.3124884 C114.888206,45.8520755 106.215951,37.870005 95.8086056,33.8504284 C94.6662581,33.4096228 93.4600031,33.154336 92.2809087,32.8340384 C89.7917095,32.1569736 87.1187761,31.6099307 84.5241295,31.5639474 C84.223764,31.5433341 83.9249962,31.5211353 83.6246307,31.5005221 C81.2584535,31.2055946 78.7532775,31.4466106 76.3902957,31.6701847 C69.0537086,32.3631058 61.9248211,35.0523373 55.815259,39.1480242 C53.9651354,40.3879883 52.1645401,41.7754161 50.5348975,43.2928657 C50.018844,43.7733122 49.2887002,44.2268029 48.8828872,44.7754315 C49.4276991,45.4715238 51.6468889,46.1628593 52.5431923,46.7099023 C55.3886761,48.4493404 58.2357576,50.2220767 60.718566,52.4736739 C63.0863409,54.6206193 65.2607953,56.9863819 67.2706879,59.4615532 C67.8490512,60.1735019 68.3299556,60.999616 68.8364229,61.7654762 C69.0792716,62.1349284 69.2118798,62.6090323 69.5761529,62.8373633 C70.0842179,62.5424358 70.5044101,62.0255198 70.9741306,61.6513107 C71.5860454,61.1645217 72.3129938,60.6951747 73.0031954,60.3257225 C76.1554354,58.6433672 78.6302554,57.8838495 82.2010899,57.528668 Z M32.9012059,85.9622174 C32.9187805,86.1715208 32.9379528,86.3808242 32.957125,86.5901276 C32.9794927,86.8517568 33.0018603,87.1149717 33.024228,87.376601 C33.0449979,87.5922469 33.0657679,87.8094784 33.0849401,88.0251244 C33.3293865,92.8771577 34.6986059,97.8433564 36.7021076,102.259341 C37.3108271,103.602371 37.9195465,105.709676 39.0091703,106.716552 C39.6801996,106.668983 40.4966186,106.066443 41.1117288,105.781029 C42.6550962,105.064324 44.2447966,104.468126 45.7817732,103.732393 C48.5905102,102.389363 51.4008448,100.962294 54.0785713,99.3719055 C55.3103894,98.6393436 56.4958745,97.819572 57.7260949,97.0790819 C59.6592983,95.9152282 61.6915585,94.8369986 63.4905561,93.4717696 C63.357948,92.3491423 62.6309995,91.2027305 62.3018756,90.1086445 C61.7442822,88.255041 61.5014335,86.3237414 61.1882865,84.4209833 C61.170712,84.2005805 61.1547351,83.9817633 61.1371605,83.7613605 L61.1371605,81.60173 C61.1563328,81.2560622 61.1739073,80.9103945 61.1930796,80.5647268 C61.2170449,80.2602855 61.2394126,79.9542585 61.2633779,79.6482316 C61.2841479,79.4405138 61.3065155,79.2312104 61.3272855,79.0234927 C61.9072465,75.2750591 62.8994113,71.5171117 64.9396599,68.2554671 C65.524414,67.3199444 66.176271,66.4113773 66.9144033,65.5868488 C67.4144799,65.0287064 68.1350375,64.4467795 68.4785406,63.7950849 C67.5838349,61.9842934 66.2098225,60.3828053 64.9364645,58.8225436 C61.6931562,54.8473647 57.7197041,51.2939638 53.2925084,48.6602294 C52.0574949,47.9244962 49.1065637,45.9440421 47.8220218,45.7664514 C46.8026964,46.5021845 46.0022543,47.705679 45.1938237,48.6586437 C43.5146528,50.6375122 41.9329408,52.6671209 40.6324221,54.9155468 C36.366593,62.2839778 33.9365083,69.4557904 33.0993193,77.9309923 C32.834103,80.6202239 32.7046902,83.2618864 32.9012059,85.9622174 Z M130.499223,74.9373195 C129.505461,74.9452477 128.513296,74.9531758 127.519533,74.9595184 C126.835723,74.9293914 126.150314,74.8992644 125.466503,74.8691373 C125.180517,74.8580379 124.892933,74.8469385 124.606947,74.8374247 C124.594165,74.8612092 124.581384,74.8865793 124.568602,74.9103638 C124.32096,75.8601572 124.343328,76.946315 124.180364,77.9309923 C123.832068,80.0541533 123.290451,82.1043752 122.660962,84.1577684 C122.183253,85.7148588 121.448316,87.2164521 120.737344,88.6784047 C118.054825,94.1916464 114.429669,98.8597464 109.398547,102.481329 C107.364689,103.943282 105.231774,105.316439 102.940689,106.345514 C102.31759,106.624585 101.659342,106.914756 101.007485,107.120888 C100.560132,107.262009 100.085619,107.257252 99.6766103,107.487169 C99.6941849,108.126179 100.143135,108.616139 100.421133,109.190138 C100.930796,110.239826 101.416493,111.310127 101.863846,112.385186 C103.257031,115.726112 104.402574,119.155833 105.196625,122.688621 C105.496991,124.023723 105.608829,125.392123 105.816528,126.741496 C105.901206,127.294881 105.872448,127.971946 106.220744,128.400067 C107.489309,128.09404 108.58053,127.283782 109.746843,126.730397 C112.478891,125.436521 115.031998,123.947613 117.508415,122.222445 C128.855201,114.316485 137.334136,101.859762 140.642949,88.496057 C141.563218,84.7793361 142.344488,80.9991899 142.489878,77.1603753 C142.52982,76.1265434 142.886104,73.8035928 142.590532,72.9188102 C141.951457,72.9267384 141.280427,73.3152182 140.658926,73.4975658 C139.807358,73.7496813 138.936618,73.9399571 138.069073,74.1318186 C135.563897,74.6836184 133.034755,74.6788615 130.499223,74.9373195 Z M82.734718,132.90009 C83.3258629,132.901675 83.9186054,132.904847 84.511348,132.906432 C91.1289751,133.036454 98.3824823,131.431795 104.53678,129.039076 C104.910639,127.448688 104.217242,125.639482 103.960014,124.064949 C103.300169,120.051715 101.940535,116.087636 100.357226,112.345545 C99.9434243,111.36721 99.3634633,110.480842 98.9304896,109.516778 C98.7116062,109.031574 98.5694119,108.36878 98.1923574,107.994571 C96.6777484,108.135692 95.1743232,108.628824 93.6597142,108.830199 C91.6897638,109.091828 89.7581581,108.996691 87.7866101,109.052188 L86.8615482,108.985591 C80.1065199,108.094466 73.8355913,105.912637 68.938675,100.986079 C67.5007551,99.5399825 66.4047405,97.9559363 65.2544046,96.2878517 C64.8693616,95.7297093 64.5721915,95.0732577 64.1376201,94.5610986 C63.0400079,94.7719877 60.4357751,96.9332038 59.3269791,97.6403956 C55.430216,100.128252 51.4312009,102.397291 47.2883938,104.450684 C45.7801755,105.199102 44.2096474,105.90788 42.640717,106.518348 C41.6932875,106.886215 40.407148,107.168457 39.6642227,107.886748 C39.8623361,108.953878 40.8672824,110.130417 41.4728065,111.026299 C43.148782,113.509399 45.1219277,115.775266 47.2580377,117.8794 C55.1697927,125.668023 65.5595632,130.827669 76.5708345,132.451356 C78.5855201,132.747869 80.6992624,132.822394 82.734718,132.90009 Z" id="形状" stroke-width="15"></path>
8
+ </g>
9
+ </g>
10
+ </g>
11
+ </svg>
@@ -0,0 +1,11 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <svg width="162px" height="152px" viewBox="0 0 162 152" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
3
+ <title>logo</title>
4
+ <g id="页面-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd" stroke-linejoin="round">
5
+ <g id="画框-6" transform="translate(-111, -174)" stroke="#FFFFFF">
6
+ <g id="logo" transform="translate(118.6038, 182)">
7
+ <path d="M145.817863,66.5572555 C145.83384,66.8125422 145.851415,67.0662433 145.867392,67.3199444 C145.912127,68.8706923 145.955265,70.4214402 146,71.9706024 C145.977632,72.2227179 145.953667,72.4748333 145.931299,72.7269488 C145.908932,73.3215607 145.886564,73.9177583 145.864196,74.5139558 C145.84822,75.1608936 145.830645,75.8062457 145.814668,76.4531835 C144.573264,97.2154463 133.621107,117.048529 115.309995,127.627864 C114.012672,128.377868 112.649844,128.943939 111.306187,129.568677 C108.914447,130.681791 106.530695,131.748921 104.028715,132.635289 C98.9943971,134.420711 93.6980587,135.257924 88.4160995,135.850951 C88.2020091,135.871564 87.9863212,135.892177 87.7722309,135.91279 L85.6968331,135.979387 C85.1360443,135.985729 84.5752555,135.992072 84.0128691,136 C83.1533125,135.969873 82.2937559,135.939746 81.4326016,135.909619 C81.0843054,135.893763 80.7360093,135.876321 80.3877131,135.858879 C80.0841522,135.835094 79.7789937,135.809724 79.4754328,135.784354 C79.2613425,135.766912 79.0472522,135.74947 78.8347596,135.732028 C73.6342825,135.199256 68.5903788,134.076629 63.7701517,132.069219 C63.3355803,131.888457 62.8578714,131.804418 62.4312884,131.610971 C62.1676698,131.492049 61.9823379,131.276403 61.7155238,131.155895 C60.0331575,130.40272 58.2772975,129.766881 56.6875971,128.820259 C55.6554901,128.205034 54.4060975,127.044352 53.3500252,126.619402 C52.329102,126.207138 51.1180539,126.154812 50.0507978,125.883669 C48.339673,125.449206 46.6253529,124.81971 45.0244687,124.072878 C34.9366615,119.369894 26.3890263,111.492475 21.9410606,101.235023 C20.0142479,96.7889113 18.7648552,92.1620377 17.9068963,87.4035567 C16.7661465,81.0816427 16.6479175,74.4426024 13.8743297,68.5155107 C12.7751198,66.1687757 11.3979121,64.0979406 9.40399641,62.4076571 C6.89722265,60.2829105 4.43678186,59.2189515 2.19362675,56.5804602 C1.41395461,55.663965 0.74612068,54.665017 0.345100786,53.5249477 C0.206101858,53.1285398 0.16296426,52.6845629 0,52.3103538 L0,50.1047399 C0.193320348,49.6639343 0.220481058,49.1073775 0.354686919,48.6301024 C0.674224683,47.5043038 1.08962378,46.3975328 1.58810269,45.3367451 C3.61077674,41.0301692 6.13352739,36.9392391 8.87036834,33.0417562 C22.2558053,13.9808764 45.9894728,1.46707022 69.251822,0.203321678 C69.5505898,0.18746536 69.84776,0.173194674 70.1465278,0.158923988 C75.2271782,-0.302494865 80.352564,0.323829694 85.3804907,0.977109995 C88.8682454,1.43060069 92.2697249,2.26939991 95.6376529,3.28420426 C98.7419623,4.22131265 101.790353,5.26782964 104.757261,6.58866092 C119.118886,12.9787571 130.908231,24.6315651 137.936465,38.550241 C140.5391,43.7019588 142.780657,49.3388798 144.034843,54.9742152 C144.888009,58.8082729 145.408855,62.6629438 145.817863,66.5572555 Z M78.8347596,28.7399371 C79.0520453,28.7224952 79.2709286,28.7066389 79.4882143,28.6891969 L83.361012,28.6891969 C83.7077105,28.7066389 84.054409,28.7224952 84.4011074,28.7383515 C89.7373881,29.1379307 95.0289335,30.2558011 99.9258497,32.4534868 C101.459631,33.141651 102.99501,33.9233675 104.436125,34.7875368 C105.196625,35.2426131 105.909194,35.9387055 106.738395,36.2447324 C107.602745,35.6770762 109.139721,32.9672315 109.706901,31.9793829 C112.349478,27.3762938 113.904029,22.1643221 113.376792,16.8254998 C113.354424,16.617782 113.333654,16.4116499 113.312884,16.2039321 C113.276138,15.739342 113.287321,14.9925094 112.994944,14.6008584 C112.579545,14.0443016 111.558622,13.6415512 110.97227,13.267342 C109.488017,12.3238911 107.995776,11.3851971 106.431639,10.5765249 C99.6877941,7.08496368 92.2585411,4.76676999 84.752599,3.66792715 C83.386575,3.46655192 82.0269418,3.22395025 80.6433433,3.16369624 C80.4276553,3.14466866 80.213565,3.12405545 79.9994747,3.10344223 C78.791622,3.0368457 77.5853669,2.97183479 76.3791119,2.90523826 C76.1170909,2.88779631 75.8566676,2.87035436 75.5962443,2.85449804 C72.0046399,2.52151536 68.3475301,2.94012216 64.7846841,3.36507148 C59.3924843,4.00725236 54.5482918,5.04266992 49.3685846,6.65842872 C47.3586921,7.28475328 45.3344203,8.00463012 43.4044122,8.84342934 C42.8979449,9.06224653 41.7971373,9.32387577 41.5990239,9.82176416 C42.3036046,10.2689123 43.3868377,10.2895255 44.1936705,10.5289559 C45.7993478,11.0062311 47.3826574,11.7578206 48.796612,12.6489456 C53.746252,15.7678834 57.7836117,19.7779462 60.3734652,25.0612714 C61.0588737,26.4566273 61.7394892,27.8900385 62.2411635,29.3630904 C62.5527128,30.2795856 62.6757348,31.2975612 63.0224333,32.1823438 C63.5720383,32.1791725 64.1519993,31.8144772 64.6760412,31.625787 C65.9893414,31.1532687 67.3282047,30.7013637 68.6782517,30.3414252 C72.0094329,29.4534714 75.3997286,28.9936382 78.8347596,28.7399371 Z M29.8608041,85.705345 C29.8400341,85.4104175 29.8192642,85.1139044 29.7984942,84.8173912 C29.8288503,84.2322931 29.7265982,83.6551231 29.7377821,83.0716106 C29.7809197,80.7914721 29.8895625,78.4494939 30.2122956,76.1915543 C31.8467313,64.759149 36.4209144,54.363747 44.1920728,45.7347387 C44.9621588,44.8800832 45.6970957,43.9651736 46.53748,43.1787003 C49.5043882,40.4006734 52.6662144,37.8367067 56.2050951,35.8086837 C57.3841894,35.1332045 58.5505023,34.4275984 59.7775273,33.8377433 C60.4325797,33.5237883 61.340067,33.339855 61.8070884,32.7674419 C61.8385459,31.2785336 60.3191438,27.986762 59.6225515,26.5723785 C56.8409752,20.9291149 52.7301219,16.0707391 47.0998665,13.043768 C45.4350747,12.1494716 43.6919962,11.4406942 41.8834125,10.8857231 C41.2427393,10.6891047 40.3480335,10.3545364 39.688188,10.5527404 C38.964435,10.769972 38.2167166,11.2916448 37.5408943,11.6325557 C35.4303473,12.6965146 33.4428224,13.9507494 31.4760675,15.2509674 C30.2059049,16.0913523 28.8766278,16.8397705 27.6416143,17.7388237 C19.566895,23.6104183 12.5434549,31.0977716 7.61298724,39.7521499 C6.44347902,41.8039575 5.25320085,43.8113673 4.31056444,45.9836829 C3.60758136,47.602613 2.60263509,50.1586514 2.89181677,51.9171171 C3.34236502,54.6697739 6.55371955,56.8880728 8.7058064,58.3436828 C11.4937734,60.2305846 14.0404894,62.5773197 15.7228557,65.517081 C19.6212164,72.3368834 19.4918036,80.6440083 21.0223895,88.1297761 C21.6742466,91.3105534 22.308529,94.5087728 23.4604627,97.5595284 C26.2308551,104.902589 31.1485413,111.586027 37.5121359,116.239857 C39.5012585,117.695467 41.4919787,119.016298 43.7095708,120.115141 C44.3646232,120.43861 45.4782123,121.290094 46.1716093,121.109332 C45.8568646,120.459223 44.4333238,119.312811 43.8597536,118.683315 C42.1006982,116.748844 40.3624127,114.720821 38.8989298,112.550091 C33.2047668,104.112945 30.6628439,95.7756926 29.8608041,85.705345 Z M114.715655,18.3683195 C114.720448,18.8392522 114.723644,19.3101848 114.726839,19.7811175 C114.605415,21.4349314 114.512749,23.0871598 114.150073,24.714018 C113.544549,27.4349622 112.271191,30.019542 110.985052,32.4756856 C110.50894,33.3842527 109.957738,34.2563501 109.313869,35.0555086 C108.834563,35.6501205 108.09004,36.3382847 107.874352,37.0660897 C108.68438,37.9350159 109.78359,38.5882962 110.663916,39.4001397 C112.566764,41.1586054 114.309842,43.0788055 115.929899,45.0973147 C119.749973,49.8557958 122.525158,55.7924012 123.769758,61.7385204 C124.233087,63.9441343 124.421615,66.1323061 124.704406,68.3569476 C124.712394,69.2131887 124.720383,70.0710155 124.729969,70.9272567 C124.696417,71.3189078 124.664463,71.7089732 124.63251,72.1006242 C124.613337,72.4383638 124.594165,72.7745177 124.576591,73.1122573 C124.595763,73.3865716 124.589372,73.3913285 124.811451,73.5340354 C125.239631,73.5514773 125.667812,73.5705049 126.095993,73.5879469 C127.976472,73.7290681 129.914469,73.7798083 131.793351,73.5911181 C132.100107,73.5736762 132.406863,73.5562342 132.712022,73.5403779 C135.893021,73.5372066 139.700313,72.6809655 142.649647,71.5060123 C143.023506,70.3167885 142.708761,68.7533555 142.656037,67.5213196 C142.52982,64.5625307 142.223064,61.559344 141.614344,58.6576379 C139.78499,49.9461768 136.651923,41.4836599 131.836489,33.9439807 C129.807424,30.7679602 127.648946,27.50473 124.97122,24.8170841 C122.595456,22.4322938 120.246854,20.106172 117.641023,17.9608122 C116.982776,17.4201117 115.225318,15.7837397 114.506358,15.69653 C114.576656,16.587655 114.646955,17.4771945 114.715655,18.3683195 Z M82.2010899,57.528668 C82.9775667,57.528668 83.7540435,57.5270824 84.5305202,57.5270824 C90.0297652,58.1882908 95.2526099,60.6713902 97.6747062,65.913489 C98.553435,67.8130759 98.9991902,69.7729168 99.318728,71.8263099 C99.3379002,72.0467127 99.3586702,72.2671156 99.3794402,72.4875184 C99.3810378,72.8220867 99.3826355,73.156655 99.3826355,73.4928089 L99.3155326,74.2681829 C98.8202491,79.5261379 95.0768642,85.0790205 89.516907,85.9701456 C88.3090543,86.1635926 86.944628,86.1857915 85.7527522,85.8575657 C81.3239588,84.633458 78.6094855,80.0842803 81.3031888,75.8902842 C81.8847475,74.9833028 83.0318881,73.8781175 84.202994,74.5298121 C84.4346589,74.6582483 84.6663238,74.883408 84.7446105,75.1434516 C84.9091725,75.6952515 84.4266705,76.0932451 84.1374888,76.5086806 C83.669366,77.1809885 83.3737935,77.8184125 83.3258629,78.642941 C83.3258629,78.9886088 83.3242652,79.3342765 83.3242652,79.6799442 C83.6326191,83.4363059 87.853713,83.7819737 90.6560592,82.5927498 C93.912149,81.2100789 95.8517432,77.385535 96.0961896,74.0176531 C96.0977873,73.3691297 96.0977873,72.7190206 96.0977873,72.0704972 C96.0897989,71.1175325 95.8405594,70.1867667 95.5977107,69.2702715 C94.9474514,66.8141278 93.527106,64.3785974 91.4612943,62.8262639 C87.9943096,60.2194852 82.8721192,59.6026744 78.7756451,60.7903126 C71.92156,62.7771093 66.9719201,68.8548359 65.1553479,75.520832 C64.441181,78.1418814 64.1424132,81.0055324 64.2846075,83.7137915 C64.3868596,85.6609474 64.8613731,87.6731141 65.4589088,89.525132 C69.0600994,100.702251 79.9419579,107.027336 91.5236042,106.107669 C91.7360968,106.087056 91.9501871,106.068029 92.1626797,106.047415 C93.5382898,106.015703 94.9602329,105.63198 96.2847169,105.287898 C98.9304896,104.598148 101.336609,103.71178 103.723556,102.371921 C114.749207,96.1816143 120.938653,85.1281751 121.27257,72.6619379 C121.306122,71.442587 121.512223,70.2200649 121.398788,68.9991284 C121.379615,68.5313671 121.362041,68.06202 121.344466,67.592673 C121.320501,67.1629668 121.296535,66.731675 121.274168,66.3003831 L121.216651,65.6534453 C121.03771,62.4092427 120.032764,59.3251888 118.882428,56.3124884 C114.888206,45.8520755 106.215951,37.870005 95.8086056,33.8504284 C94.6662581,33.4096228 93.4600031,33.154336 92.2809087,32.8340384 C89.7917095,32.1569736 87.1187761,31.6099307 84.5241295,31.5639474 C84.223764,31.5433341 83.9249962,31.5211353 83.6246307,31.5005221 C81.2584535,31.2055946 78.7532775,31.4466106 76.3902957,31.6701847 C69.0537086,32.3631058 61.9248211,35.0523373 55.815259,39.1480242 C53.9651354,40.3879883 52.1645401,41.7754161 50.5348975,43.2928657 C50.018844,43.7733122 49.2887002,44.2268029 48.8828872,44.7754315 C49.4276991,45.4715238 51.6468889,46.1628593 52.5431923,46.7099023 C55.3886761,48.4493404 58.2357576,50.2220767 60.718566,52.4736739 C63.0863409,54.6206193 65.2607953,56.9863819 67.2706879,59.4615532 C67.8490512,60.1735019 68.3299556,60.999616 68.8364229,61.7654762 C69.0792716,62.1349284 69.2118798,62.6090323 69.5761529,62.8373633 C70.0842179,62.5424358 70.5044101,62.0255198 70.9741306,61.6513107 C71.5860454,61.1645217 72.3129938,60.6951747 73.0031954,60.3257225 C76.1554354,58.6433672 78.6302554,57.8838495 82.2010899,57.528668 Z M32.9012059,85.9622174 C32.9187805,86.1715208 32.9379528,86.3808242 32.957125,86.5901276 C32.9794927,86.8517568 33.0018603,87.1149717 33.024228,87.376601 C33.0449979,87.5922469 33.0657679,87.8094784 33.0849401,88.0251244 C33.3293865,92.8771577 34.6986059,97.8433564 36.7021076,102.259341 C37.3108271,103.602371 37.9195465,105.709676 39.0091703,106.716552 C39.6801996,106.668983 40.4966186,106.066443 41.1117288,105.781029 C42.6550962,105.064324 44.2447966,104.468126 45.7817732,103.732393 C48.5905102,102.389363 51.4008448,100.962294 54.0785713,99.3719055 C55.3103894,98.6393436 56.4958745,97.819572 57.7260949,97.0790819 C59.6592983,95.9152282 61.6915585,94.8369986 63.4905561,93.4717696 C63.357948,92.3491423 62.6309995,91.2027305 62.3018756,90.1086445 C61.7442822,88.255041 61.5014335,86.3237414 61.1882865,84.4209833 C61.170712,84.2005805 61.1547351,83.9817633 61.1371605,83.7613605 L61.1371605,81.60173 C61.1563328,81.2560622 61.1739073,80.9103945 61.1930796,80.5647268 C61.2170449,80.2602855 61.2394126,79.9542585 61.2633779,79.6482316 C61.2841479,79.4405138 61.3065155,79.2312104 61.3272855,79.0234927 C61.9072465,75.2750591 62.8994113,71.5171117 64.9396599,68.2554671 C65.524414,67.3199444 66.176271,66.4113773 66.9144033,65.5868488 C67.4144799,65.0287064 68.1350375,64.4467795 68.4785406,63.7950849 C67.5838349,61.9842934 66.2098225,60.3828053 64.9364645,58.8225436 C61.6931562,54.8473647 57.7197041,51.2939638 53.2925084,48.6602294 C52.0574949,47.9244962 49.1065637,45.9440421 47.8220218,45.7664514 C46.8026964,46.5021845 46.0022543,47.705679 45.1938237,48.6586437 C43.5146528,50.6375122 41.9329408,52.6671209 40.6324221,54.9155468 C36.366593,62.2839778 33.9365083,69.4557904 33.0993193,77.9309923 C32.834103,80.6202239 32.7046902,83.2618864 32.9012059,85.9622174 Z M130.499223,74.9373195 C129.505461,74.9452477 128.513296,74.9531758 127.519533,74.9595184 C126.835723,74.9293914 126.150314,74.8992644 125.466503,74.8691373 C125.180517,74.8580379 124.892933,74.8469385 124.606947,74.8374247 C124.594165,74.8612092 124.581384,74.8865793 124.568602,74.9103638 C124.32096,75.8601572 124.343328,76.946315 124.180364,77.9309923 C123.832068,80.0541533 123.290451,82.1043752 122.660962,84.1577684 C122.183253,85.7148588 121.448316,87.2164521 120.737344,88.6784047 C118.054825,94.1916464 114.429669,98.8597464 109.398547,102.481329 C107.364689,103.943282 105.231774,105.316439 102.940689,106.345514 C102.31759,106.624585 101.659342,106.914756 101.007485,107.120888 C100.560132,107.262009 100.085619,107.257252 99.6766103,107.487169 C99.6941849,108.126179 100.143135,108.616139 100.421133,109.190138 C100.930796,110.239826 101.416493,111.310127 101.863846,112.385186 C103.257031,115.726112 104.402574,119.155833 105.196625,122.688621 C105.496991,124.023723 105.608829,125.392123 105.816528,126.741496 C105.901206,127.294881 105.872448,127.971946 106.220744,128.400067 C107.489309,128.09404 108.58053,127.283782 109.746843,126.730397 C112.478891,125.436521 115.031998,123.947613 117.508415,122.222445 C128.855201,114.316485 137.334136,101.859762 140.642949,88.496057 C141.563218,84.7793361 142.344488,80.9991899 142.489878,77.1603753 C142.52982,76.1265434 142.886104,73.8035928 142.590532,72.9188102 C141.951457,72.9267384 141.280427,73.3152182 140.658926,73.4975658 C139.807358,73.7496813 138.936618,73.9399571 138.069073,74.1318186 C135.563897,74.6836184 133.034755,74.6788615 130.499223,74.9373195 Z M82.734718,132.90009 C83.3258629,132.901675 83.9186054,132.904847 84.511348,132.906432 C91.1289751,133.036454 98.3824823,131.431795 104.53678,129.039076 C104.910639,127.448688 104.217242,125.639482 103.960014,124.064949 C103.300169,120.051715 101.940535,116.087636 100.357226,112.345545 C99.9434243,111.36721 99.3634633,110.480842 98.9304896,109.516778 C98.7116062,109.031574 98.5694119,108.36878 98.1923574,107.994571 C96.6777484,108.135692 95.1743232,108.628824 93.6597142,108.830199 C91.6897638,109.091828 89.7581581,108.996691 87.7866101,109.052188 L86.8615482,108.985591 C80.1065199,108.094466 73.8355913,105.912637 68.938675,100.986079 C67.5007551,99.5399825 66.4047405,97.9559363 65.2544046,96.2878517 C64.8693616,95.7297093 64.5721915,95.0732577 64.1376201,94.5610986 C63.0400079,94.7719877 60.4357751,96.9332038 59.3269791,97.6403956 C55.430216,100.128252 51.4312009,102.397291 47.2883938,104.450684 C45.7801755,105.199102 44.2096474,105.90788 42.640717,106.518348 C41.6932875,106.886215 40.407148,107.168457 39.6642227,107.886748 C39.8623361,108.953878 40.8672824,110.130417 41.4728065,111.026299 C43.148782,113.509399 45.1219277,115.775266 47.2580377,117.8794 C55.1697927,125.668023 65.5595632,130.827669 76.5708345,132.451356 C78.5855201,132.747869 80.6992624,132.822394 82.734718,132.90009 Z" id="形状" stroke-width="15"></path>
8
+ </g>
9
+ </g>
10
+ </g>
11
+ </svg>
@@ -1,4 +1,13 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="-29.86 -30.23 974.0500000000001 920.12" width="974.0500000000001" height="920.12">
2
- <path d="M912.82 421.43C912.92 423.04 913.03 424.64 913.13 426.24C913.41 436.02 913.68 445.8 913.96 455.57C913.82 457.16 913.67 458.75 913.53 460.34C913.39 464.09 913.25 467.85 913.11 471.61C913.01 475.69 912.9 479.76 912.8 483.84C905.03 614.78 836.48 739.86 721.87 806.58C713.75 811.31 705.22 814.88 696.81 818.82C681.84 825.84 666.92 832.57 651.26 838.16C619.75 849.42 586.6 854.7 553.54 858.44C552.2 858.57 550.85 858.7 549.51 858.83C545.18 858.97 540.85 859.11 536.52 859.25C533.01 859.29 529.5 859.33 525.98 859.38C520.6 859.19 515.22 859 509.83 858.81C507.65 858.71 505.47 858.6 503.29 858.49C501.39 858.34 499.48 858.18 497.58 858.02C496.24 857.91 494.9 857.8 493.57 857.69C461.02 854.33 429.45 847.25 399.28 834.59C396.56 833.45 393.57 832.92 390.9 831.7C389.25 830.95 388.09 829.59 386.42 828.83C375.89 824.08 364.9 820.07 354.95 814.1C348.49 810.22 340.67 802.9 334.06 800.22C327.67 797.62 320.09 797.29 313.41 795.58C302.7 792.84 291.97 788.87 281.95 784.16C218.81 754.5 165.31 704.82 137.47 640.13C125.41 612.09 117.59 582.91 112.22 552.9C105.08 513.03 104.34 471.16 86.98 433.78C80.1 418.98 71.48 405.92 59 395.26C43.31 381.86 27.91 375.15 13.87 358.51C8.99 352.73 4.81 346.43 2.3 339.24C1.43 336.74 1.16 333.94 0.14 331.58C0.14 326.94 0.14 322.31 0.14 317.67C1.35 314.89 1.52 311.38 2.36 308.37C4.36 301.27 6.96 294.29 10.08 287.6C22.74 260.44 38.53 234.64 55.66 210.06C139.44 89.85 287.99 10.93 433.59 2.96C435.46 2.86 437.32 2.77 439.19 2.68C470.99 -0.23 503.07 3.72 534.54 7.84C556.37 10.7 577.66 15.99 598.74 22.39C618.17 28.3 637.25 34.9 655.82 43.23C745.71 83.53 819.5 157.02 863.49 244.8C879.78 277.29 893.81 312.84 901.66 348.38C907 372.56 910.26 396.87 912.82 421.43ZM493.57 182.93C494.93 182.82 496.3 182.72 497.66 182.61C505.74 182.61 513.82 182.61 521.9 182.61C524.07 182.72 526.24 182.82 528.41 182.92C561.81 185.44 594.93 192.49 625.58 206.35C635.18 210.69 644.79 215.62 653.81 221.07C658.57 223.94 663.03 228.33 668.22 230.26C673.63 226.68 683.25 209.59 686.8 203.36C703.34 174.33 713.07 141.46 709.77 107.79C709.63 106.48 709.5 105.18 709.37 103.87C709.14 100.94 709.21 96.23 707.38 93.76C704.78 90.25 698.39 87.71 694.72 85.35C685.43 79.4 676.09 73.48 666.3 68.38C624.09 46.36 577.59 31.74 530.61 24.81C522.06 23.54 513.55 22.01 504.89 21.63C503.54 21.51 502.2 21.38 500.86 21.25C493.3 20.83 485.75 20.42 478.2 20C476.56 19.89 474.93 19.78 473.3 19.68C450.82 17.58 427.93 20.22 405.63 22.9C371.88 26.95 341.56 33.48 309.14 43.67C296.56 47.62 283.89 52.16 271.81 57.45C268.64 58.83 261.75 60.48 260.51 63.62C264.92 66.44 271.7 66.57 276.75 68.08C286.8 71.09 296.71 75.83 305.56 81.45C336.54 101.12 361.81 126.41 378.02 159.73C382.31 168.53 386.57 177.57 389.71 186.86C391.66 192.64 392.43 199.06 394.6 204.64C398.04 204.62 401.67 202.32 404.95 201.13C413.17 198.15 421.55 195.3 430 193.03C450.85 187.43 472.07 184.53 493.57 182.93ZM187.04 542.19C186.91 540.33 186.78 538.46 186.65 536.59C186.84 532.9 186.2 529.26 186.27 525.58C186.54 511.2 187.22 496.43 189.24 482.19C199.47 410.09 228.1 344.53 276.74 290.11C281.56 284.72 286.16 278.95 291.42 273.99C309.99 256.47 329.78 240.3 351.93 227.51C359.31 223.25 366.61 218.8 374.29 215.08C378.39 213.1 384.07 211.94 386.99 208.33C387.19 198.94 377.68 178.18 373.32 169.26C355.91 133.67 330.18 103.03 294.94 83.94C284.52 78.3 273.61 73.83 262.29 70.33C258.28 69.09 252.68 66.98 248.55 68.23C244.02 69.6 239.34 72.89 235.11 75.04C221.9 81.75 209.46 89.66 197.15 97.86C189.2 103.16 180.88 107.88 173.15 113.55C122.61 150.58 78.65 197.8 47.79 252.38C40.47 265.32 33.02 277.98 27.12 291.68C22.72 301.89 16.43 318.01 18.24 329.1C21.06 346.46 41.16 360.45 54.63 369.63C72.08 381.53 88.02 396.33 98.55 414.87C122.95 457.88 122.14 510.27 131.72 557.48C135.8 577.54 139.77 597.71 146.98 616.95C164.32 663.26 195.1 705.41 234.93 734.76C247.38 743.94 259.84 752.27 273.72 759.2C277.82 761.24 284.79 766.61 289.13 765.47C287.16 761.37 278.25 754.14 274.66 750.17C263.65 737.97 252.77 725.18 243.61 711.49C207.97 658.28 192.06 605.7 187.04 542.19ZM718.15 117.52C718.18 120.49 718.2 123.46 718.22 126.43C717.46 136.86 716.88 147.28 714.61 157.54C710.82 174.7 702.85 191 694.8 206.49C691.82 212.22 688.37 217.72 684.34 222.76C681.34 226.51 676.68 230.85 675.33 235.44C680.4 240.92 687.28 245.04 692.79 250.16C704.7 261.25 715.61 273.36 725.75 286.09C749.66 316.1 767.03 353.54 774.82 391.04C777.72 404.95 778.9 418.75 780.67 432.78C780.72 438.18 780.77 443.59 780.83 448.99C780.62 451.46 780.42 453.92 780.22 456.39C780.1 458.52 779.98 460.64 779.87 462.77C779.99 464.5 779.95 464.53 781.34 465.43C784.02 465.54 786.7 465.66 789.38 465.77C801.15 466.66 813.28 466.98 825.04 465.79C826.96 465.68 828.88 465.57 830.79 465.47C850.7 465.45 874.53 460.05 892.99 452.64C895.33 445.14 893.36 435.28 893.03 427.51C892.24 408.85 890.32 389.91 886.51 371.61C875.06 316.67 855.45 263.3 825.31 215.75C812.61 195.72 799.1 175.14 782.34 158.19C767.47 143.15 752.77 128.48 736.46 114.95C732.34 111.54 721.34 101.22 716.84 100.67C717.28 106.29 717.72 111.9 718.15 117.52ZM514.64 364.49C519.5 364.49 524.36 364.48 529.22 364.48C563.64 368.65 596.33 384.31 611.49 417.37C616.99 429.35 619.78 441.71 621.78 454.66C621.9 456.05 622.03 457.44 622.16 458.83C622.17 460.94 622.18 463.05 622.18 465.17C622.04 466.8 621.9 468.43 621.76 470.06C618.66 503.22 595.23 538.24 560.43 543.86C552.87 545.08 544.33 545.22 536.87 543.15C509.15 535.43 492.16 506.74 509.02 480.29C512.66 474.57 519.84 467.6 527.17 471.71C528.62 472.52 530.07 473.94 530.56 475.58C531.59 479.06 528.57 481.57 526.76 484.19C523.83 488.43 521.98 492.45 521.68 497.65C521.68 499.83 521.67 502.01 521.67 504.19C523.6 527.88 550.02 530.06 567.56 522.56C587.94 513.84 600.08 489.72 601.61 468.48C601.62 464.39 601.62 460.29 601.62 456.2C601.57 450.19 600.01 444.32 598.49 438.54C594.42 423.05 585.53 407.69 572.6 397.9C550.9 381.46 518.84 377.57 493.2 385.06C450.3 397.59 419.32 435.92 407.95 477.96C403.48 494.49 401.61 512.55 402.5 529.63C403.14 541.91 406.11 554.6 409.85 566.28C432.39 636.77 500.5 676.66 572.99 670.86C574.32 670.73 575.66 670.61 576.99 670.48C585.6 670.28 594.5 667.86 602.79 665.69C619.35 661.34 634.41 655.75 649.35 647.3C718.36 608.26 757.1 538.55 759.19 459.93C759.4 452.24 760.69 444.53 759.98 436.83C759.86 433.88 759.75 430.92 759.64 427.96C759.49 425.25 759.34 422.53 759.2 419.81C759.08 418.45 758.96 417.09 758.84 415.73C757.72 395.27 751.43 375.82 744.23 356.82C719.23 290.85 664.95 240.51 599.81 215.16C592.66 212.38 585.11 210.77 577.73 208.75C562.15 204.48 545.42 201.03 529.18 200.74C527.3 200.61 525.43 200.47 523.55 200.34C508.74 198.48 493.06 200 478.27 201.41C432.35 205.78 387.73 222.74 349.49 248.57C337.91 256.39 326.64 265.14 316.44 274.71C313.21 277.74 308.64 280.6 306.1 284.06C309.51 288.45 323.4 292.81 329.01 296.26C346.82 307.23 364.64 318.41 380.18 332.61C395 346.15 408.61 361.07 421.19 376.68C424.81 381.17 427.82 386.38 430.99 391.21C432.51 393.54 433.34 396.53 435.62 397.97C438.8 396.11 441.43 392.85 444.37 390.49C448.2 387.42 452.75 384.46 457.07 382.13C476.8 371.52 492.29 366.73 514.64 364.49ZM206.07 543.81C206.18 545.13 206.3 546.45 206.42 547.77C206.56 549.42 206.7 551.08 206.84 552.73C206.97 554.09 207.1 555.46 207.22 556.82C208.75 587.42 217.32 618.74 229.86 646.59C233.67 655.06 237.48 668.35 244.3 674.7C248.5 674.4 253.61 670.6 257.46 668.8C267.12 664.28 277.07 660.52 286.69 655.88C304.27 647.41 321.86 638.41 338.62 628.38C346.33 623.76 353.75 618.59 361.45 613.92C373.55 606.58 386.27 599.78 397.53 591.17C396.7 584.09 392.15 576.86 390.09 569.96C386.6 558.27 385.08 546.09 383.12 534.09C383.01 532.7 382.91 531.32 382.8 529.93C382.8 525.39 382.8 520.85 382.8 516.31C382.92 514.13 383.03 511.95 383.15 509.77C383.3 507.85 383.44 505.92 383.59 503.99C383.72 502.68 383.86 501.36 383.99 500.05C387.62 476.41 393.83 452.71 406.6 432.14C410.26 426.24 414.34 420.51 418.96 415.31C422.09 411.79 426.6 408.12 428.75 404.01C423.15 392.59 414.55 382.49 406.58 372.65C386.28 347.58 361.41 325.17 333.7 308.56C325.97 303.92 307.5 291.43 299.46 290.31C293.08 294.95 288.07 302.54 283.01 308.55C272.5 321.03 262.6 333.83 254.46 348.01C227.76 394.48 212.55 439.71 207.31 493.16C205.65 510.12 204.84 526.78 206.07 543.81ZM816.94 474.28C810.72 474.33 804.51 474.38 798.29 474.42C794.01 474.23 789.72 474.04 785.44 473.85C783.65 473.78 781.85 473.71 780.06 473.65C779.98 473.8 779.9 473.96 779.82 474.11C778.27 480.1 778.41 486.95 777.39 493.16C775.21 506.55 771.82 519.48 767.88 532.43C764.89 542.25 760.29 551.72 755.84 560.94C739.05 595.71 716.36 625.15 684.87 647.99C672.14 657.21 658.79 665.87 644.45 672.36C640.55 674.12 636.43 675.95 632.35 677.25C629.55 678.14 626.58 678.11 624.02 679.56C624.13 683.59 626.94 686.68 628.68 690.3C631.87 696.92 634.91 703.67 637.71 710.45C646.43 731.52 653.6 753.15 658.57 775.43C660.45 783.85 661.15 792.48 662.45 800.99C662.98 804.48 662.8 808.75 664.98 811.45C672.92 809.52 679.75 804.41 687.05 800.92C704.15 792.76 720.13 783.37 735.63 772.49C806.65 722.63 859.72 644.07 880.43 559.79C886.19 536.35 891.08 512.51 891.99 488.3C892.24 481.78 894.47 467.13 892.62 461.55C888.62 461.6 884.42 464.05 880.53 465.2C875.2 466.79 869.75 467.99 864.32 469.2C848.64 472.68 832.81 472.65 816.94 474.28ZM517.98 839.83C521.68 839.84 525.39 839.86 529.1 839.87C570.52 840.69 615.92 830.57 654.44 815.48C656.78 805.45 652.44 794.04 650.83 784.11C646.7 758.8 638.19 733.8 628.28 710.2C625.69 704.03 622.06 698.44 619.35 692.36C617.98 689.3 617.09 685.12 614.73 682.76C605.25 683.65 595.84 686.76 586.36 688.03C574.03 689.68 561.94 689.08 549.6 689.43C547.67 689.29 545.74 689.15 543.81 689.01C501.53 683.39 462.28 669.63 431.63 638.56C422.63 629.44 415.77 619.45 408.57 608.93C406.16 605.41 404.3 601.27 401.58 598.04C394.71 599.37 378.41 613 371.47 617.46C347.08 633.15 322.05 647.46 296.12 660.41C286.68 665.13 276.85 669.6 267.03 673.45C261.1 675.77 253.05 677.55 248.4 682.08C249.64 688.81 255.93 696.23 259.72 701.88C270.21 717.54 282.56 731.83 295.93 745.1C345.45 794.22 410.48 826.76 479.4 837C492.01 838.87 505.24 839.34 517.98 839.83Z" fill="#1a1a1a" fill-rule="evenodd" stroke="#1a1a1a" stroke-width="60" stroke-linejoin="round"/>
3
- <path d="M439.19 2.68C437.32 2.77 435.46 2.86 433.59 2.96C433.73 2.78 433.86 2.61 434 2.43C435.73 2.51 437.46 2.6 439.19 2.68ZM473.3 19.68C474.93 19.78 476.56 19.89 478.2 20C476.7 20.09 475.2 20.17 473.71 20.26C473.57 20.07 473.44 19.87 473.3 19.68ZM500.86 21.25C502.2 21.38 503.54 21.51 504.89 21.63C503.68 21.72 502.47 21.8 501.26 21.88C501.13 21.67 500.99 21.46 500.86 21.25ZM709.37 103.87C709.5 105.18 709.63 106.48 709.77 107.79C709.56 107.66 709.35 107.52 709.15 107.38C709.22 106.21 709.29 105.04 709.37 103.87ZM718.15 117.52C718.39 117.65 718.63 117.79 718.87 117.92C718.87 120.62 718.87 123.32 718.87 126.03C718.65 126.16 718.44 126.3 718.22 126.43C718.2 123.46 718.18 120.49 718.15 117.52ZM497.66 182.61C496.3 182.72 494.93 182.82 493.57 182.93C493.7 182.73 493.84 182.54 493.97 182.35C495.2 182.44 496.43 182.53 497.66 182.61ZM521.9 182.61C523.94 182.53 525.97 182.44 528.01 182.35C528.14 182.54 528.28 182.73 528.41 182.92C526.24 182.82 524.07 182.72 521.9 182.61ZM523.55 200.34C525.43 200.47 527.3 200.61 529.18 200.74C527.44 200.82 525.7 200.91 523.96 200.99C523.82 200.77 523.69 200.56 523.55 200.34ZM529.22 364.48C524.36 364.48 519.5 364.49 514.64 364.49C514.77 364.29 514.91 364.09 515.04 363.89C519.63 363.89 524.23 363.89 528.82 363.89C528.95 364.09 529.09 364.28 529.22 364.48ZM758.84 415.73C758.96 417.09 759.08 418.45 759.2 419.81C758.99 419.68 758.79 419.54 758.58 419.41C758.67 418.18 758.75 416.96 758.84 415.73ZM912.82 421.43C913.01 421.57 913.19 421.71 913.38 421.84C913.3 423.31 913.21 424.77 913.13 426.24C913.03 424.64 912.92 423.04 912.82 421.43ZM759.64 427.96C759.75 430.92 759.86 433.88 759.98 436.83C759.78 436.7 759.59 436.56 759.39 436.43C759.47 433.61 759.56 430.78 759.64 427.96ZM780.67 432.78C780.72 438.18 780.77 443.59 780.83 448.99C780.77 443.59 780.72 438.18 780.67 432.78ZM621.78 454.66C621.99 454.8 622.21 454.93 622.43 455.07C622.34 456.32 622.25 457.57 622.16 458.83C622.03 457.44 621.9 456.05 621.78 454.66ZM913.96 455.57C914.04 457.03 914.11 458.48 914.19 459.93C913.97 460.07 913.75 460.2 913.53 460.34C913.67 458.75 913.82 457.16 913.96 455.57ZM601.62 456.2C601.62 460.29 601.62 464.39 601.61 468.48C601.62 464.39 601.62 460.29 601.62 456.2ZM780.22 456.39C780.3 458.38 780.38 460.37 780.47 462.36C780.27 462.5 780.07 462.63 779.87 462.77C779.98 460.64 780.1 458.52 780.22 456.39ZM622.18 465.17C622.26 466.66 622.35 468.16 622.43 469.66C622.2 469.79 621.98 469.93 621.76 470.06C621.9 468.43 622.04 466.8 622.18 465.17ZM781.34 465.43C783.89 465.35 786.43 465.28 788.97 465.2C789.11 465.39 789.24 465.58 789.38 465.77C786.7 465.66 784.02 465.54 781.34 465.43ZM830.79 465.47C828.88 465.57 826.96 465.68 825.04 465.79C825.17 465.59 825.31 465.4 825.45 465.2C827.23 465.29 829.01 465.38 830.79 465.47ZM913.11 471.61C913.2 475.55 913.29 479.49 913.38 483.43C913.19 483.57 912.99 483.7 912.8 483.84C912.9 479.76 913.01 475.69 913.11 471.61ZM785.44 473.85C783.57 473.94 781.69 474.02 779.82 474.11C779.9 473.96 779.98 473.8 780.06 473.65C781.85 473.71 783.65 473.78 785.44 473.85ZM798.29 474.42C804.51 474.38 810.72 474.33 816.94 474.28C814.3 475.59 801.18 475.53 798.29 474.42ZM521.68 497.65C521.68 499.83 521.67 502.01 521.67 504.19C521.67 502.01 521.68 499.83 521.68 497.65ZM383.99 500.05C383.86 501.36 383.72 502.68 383.59 503.99C383.5 502.81 383.42 501.63 383.34 500.45C383.56 500.32 383.78 500.18 383.99 500.05ZM383.15 509.77C383.03 511.95 382.92 514.13 382.8 516.31C382.71 514.27 382.62 512.22 382.53 510.18C382.74 510.04 382.95 509.91 383.15 509.77ZM382.8 529.93C382.91 531.32 383.01 532.7 383.12 534.09C382.92 533.95 382.73 533.82 382.53 533.68C382.62 532.43 382.71 531.18 382.8 529.93ZM186.65 536.59C186.78 538.46 186.91 540.33 187.04 542.19C186.82 542.06 186.61 541.92 186.4 541.79C186.49 540.06 186.57 538.33 186.65 536.59ZM206.07 543.81C206.27 543.95 206.47 544.08 206.67 544.22C206.58 545.4 206.5 546.59 206.42 547.77C206.3 546.45 206.18 545.13 206.07 543.81ZM206.84 552.73C207.05 552.86 207.26 553 207.48 553.13C207.39 554.36 207.31 555.59 207.22 556.82C207.1 555.46 206.97 554.09 206.84 552.73ZM576.99 670.48C575.66 670.61 574.32 670.73 572.99 670.86C573.12 670.66 573.26 670.45 573.39 670.24C574.59 670.32 575.79 670.4 576.99 670.48ZM543.81 689.01C545.74 689.15 547.67 689.29 549.6 689.43C547.81 689.52 546.01 689.6 544.22 689.69C544.08 689.47 543.95 689.24 543.81 689.01ZM517.98 839.83C521.68 839.84 525.39 839.86 529.1 839.87C525.39 839.86 521.68 839.84 517.98 839.83ZM493.57 857.69C494.9 857.8 496.24 857.91 497.58 858.02C496.37 858.1 495.17 858.19 493.97 858.27C493.84 858.08 493.7 857.88 493.57 857.69ZM503.29 858.49C505.47 858.6 507.65 858.71 509.83 858.81C507.79 858.9 505.74 858.99 503.7 859.08C503.56 858.88 503.43 858.69 503.29 858.49ZM553.54 858.44C553.4 858.66 553.27 858.87 553.13 859.08C551.93 858.99 550.72 858.91 549.51 858.83C550.85 858.7 552.2 858.57 553.54 858.44ZM525.98 859.38C529.5 859.33 533.01 859.29 536.52 859.25C536.38 859.46 536.25 859.67 536.11 859.89C532.87 859.89 529.63 859.89 526.39 859.89C526.25 859.72 526.12 859.55 525.98 859.38Z" fill="#1a1a1a" fill-rule="evenodd" stroke="#1a1a1a" stroke-width="60" stroke-linejoin="round"/>
4
- </svg>
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <svg width="157px" height="147px" viewBox="0 0 157 147" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
3
+ <title>形状</title>
4
+ <g id="页面-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd" stroke-linejoin="round">
5
+ <g id="画框-5" transform="translate(-308, -247)" stroke="#000000">
6
+ <g id="allblue-logo-dark" transform="translate(308.1788, 246.5)">
7
+ <g id="编组" transform="translate(4.8121, 5.1073)">
8
+ <path d="M146.396102,67.1881006 C146.412142,67.445807 146.429787,67.7019127 146.445827,67.9580184 C146.490739,69.5234647 146.534048,71.0889109 146.578961,72.6527565 C146.556504,72.9072616 146.532444,73.1617667 146.509988,73.4162717 C146.487531,74.0165195 146.465075,74.618368 146.442619,75.2202164 C146.426579,75.873286 146.408934,76.524755 146.392894,77.1778246 C145.146567,98.1368769 134.15098,118.157942 115.767255,128.837551 C114.464788,129.594663 113.096555,130.166099 111.74757,130.796759 C109.346346,131.920423 106.953141,132.997668 104.441239,133.892437 C99.386958,135.694781 94.069617,136.53993 88.7667122,137.138578 C88.5517729,137.159386 88.3352296,137.180195 88.1202903,137.201003 L86.0366626,137.268231 C85.47365,137.274634 84.9106374,137.281036 84.3460208,137.28904 C83.4830557,137.258627 82.6200905,137.228215 81.7555214,137.197802 C81.4058441,137.181795 81.0561667,137.164188 80.7064894,137.146581 C80.4017248,137.122571 80.0953561,137.09696 79.7905914,137.07135 C79.5756522,137.053742 79.3607129,137.036135 79.1473777,137.018528 C73.9262781,136.480706 68.862373,135.347438 64.0230313,133.321002 C63.5867366,133.138526 63.1071333,133.053691 62.6788588,132.858411 C62.4141948,132.738361 62.2281279,132.520671 61.9602558,132.399021 C60.2712181,131.638707 58.5083953,130.996842 56.9123909,130.041248 C55.8761912,129.420191 54.6218441,128.248508 53.5615839,127.81953 C52.5366123,127.403359 51.3207618,127.350537 50.2492734,127.076824 C48.5313633,126.638243 46.8102451,126.00278 45.2030126,125.248869 C35.0752023,120.501309 26.4936716,112.549227 22.0280676,102.194552 C20.0936141,97.7062991 18.839267,93.0355709 17.9779059,88.2319879 C16.8326324,81.8501534 16.7139346,75.1481867 13.9293482,69.1649167 C12.8257794,66.7959387 11.4431103,64.7054757 9.44128782,62.9991713 C6.92457348,60.8542859 4.45437585,59.7802425 2.20232555,57.116743 C1.41956162,56.191561 0.749079411,55.1831447 0.346469278,54.0322696 C0.206919152,53.6321044 0.163610492,53.1839194 0,52.8061635 L0,50.5796443 C0.194086957,50.1346606 0.221355372,49.5728287 0.356093424,49.0910298 C0.676898311,47.9545606 1.09394466,46.8372994 1.59440029,45.7664573 C3.62509522,41.4190627 6.1578498,37.2893578 8.90554366,33.3549336 C22.3440604,14.1133904 46.1718433,1.48097545 69.5264391,0.205248808 C69.8263917,0.1892422 70.1247402,0.174836253 70.4246928,0.160430306 C75.5254905,-0.305361982 80.6712009,0.326899028 85.7190658,0.98637127 C89.2206511,1.44416025 92.6356191,2.29090981 96.0169026,3.31533271 C99.1335221,4.26132323 102.194001,5.31775935 105.172674,6.65110978 C119.59125,13.1017727 131.427346,24.8650288 138.48345,38.9156292 C141.096405,44.1161761 143.346852,49.8065252 144.606011,55.4952736 C145.46256,59.3656714 145.985472,63.2568777 146.396102,67.1881006 Z M79.1473777,29.0123409 C79.365525,28.9947337 79.5852763,28.9787271 79.8034236,28.9611198 L83.6915789,28.9611198 C84.0396522,28.9787271 84.3877255,28.9947337 84.7357988,29.0107403 C90.0932404,29.4141068 95.4057693,30.5425726 100.322104,32.7610885 C101.861968,33.4557753 103.403435,34.244901 104.850265,35.1172612 C105.613781,35.5766508 106.329176,36.2793409 107.161664,36.5882684 C108.029442,36.0152319 109.572513,33.2797026 110.141942,32.2824909 C112.794998,27.6357727 114.355714,22.3744007 113.826386,16.9849758 C113.80393,16.7752892 113.783077,16.5672033 113.762225,16.3575168 C113.725332,15.8885232 113.736561,15.1346119 113.443024,14.7392487 C113.025978,14.1774168 112.001006,13.7708489 111.412329,13.393093 C109.92219,12.4406998 108.424032,11.4931087 106.853692,10.6767717 C100.083105,7.15211661 92.6243909,4.81195054 85.0886842,3.70269262 C83.7172433,3.4994087 82.3522185,3.2545076 80.9631333,3.19368249 C80.74659,3.17447456 80.5316507,3.15366597 80.3167115,3.13285738 C79.104069,3.06562963 77.8930305,3.00000254 76.6819921,2.93277478 C76.4189321,2.91516751 76.1574761,2.89756025 75.8960201,2.88155364 C72.2901732,2.54541487 68.6185613,2.96798932 65.0415868,3.39696641 C59.6280043,4.04523403 54.7646022,5.09046552 49.564355,6.72153886 C47.5464923,7.35379987 45.5141933,8.08049986 43.5765318,8.92724942 C43.0680561,9.1481406 41.9628832,9.41224963 41.7639842,9.91485712 C42.471359,10.3662435 43.5588875,10.3870521 44.3689199,10.6287518 C45.9809644,11.1105507 47.5705526,11.8692639 48.9901143,12.7688353 C53.959382,15.9173351 58.0127517,19.9654062 60.6128753,25.2988079 C61.3010018,26.7073894 61.9843162,28.1543867 62.4879799,29.6414006 C62.8007646,30.5665825 62.9242745,31.5942068 63.2723478,32.4873755 C63.8241322,32.4841742 64.4063931,32.1160222 64.9325131,31.9255436 C66.2510212,31.4485466 67.5951937,30.9923583 68.9505943,30.6290083 C72.2949853,29.7326383 75.6987251,29.2684467 79.1473777,29.0123409 Z M29.9792167,86.5176802 C29.9583644,86.2199573 29.937512,85.9206338 29.9166597,85.6213102 C29.9471362,85.0306664 29.8444786,84.4480258 29.8557068,83.8589827 C29.8990155,81.5572325 30.0080891,79.1930565 30.332102,76.9137155 C31.973019,65.3729513 36.565341,54.8790192 44.3673158,46.1682232 C45.1404556,45.305467 45.8783069,44.3818858 46.7220237,43.587958 C49.7006971,40.7836003 52.8750614,38.1953318 56.4279756,36.1480867 C57.6117456,35.4662052 58.7826834,34.7539112 60.0145742,34.1584653 C60.6722242,33.8415345 61.5833101,33.6558579 62.0521834,33.0780193 C62.0837657,31.5749988 60.5583385,28.2520271 59.8589838,26.8242376 C57.0663773,21.1274859 52.9392224,16.2230613 47.2866403,13.1673998 C45.6152469,12.2646272 43.8652562,11.5491318 42.0495005,10.9889005 C41.4062867,10.7904186 40.5080331,10.4526791 39.845571,10.6527617 C39.1189479,10.8720523 38.3682645,11.3986697 37.6897621,11.7428117 C35.5708458,12.8168551 33.5754395,14.0829778 31.6008854,15.3955196 C30.325686,16.2438699 28.9911376,16.9993817 27.7512267,17.9069564 C19.6444872,23.8342033 12.5931958,31.3925235 7.64317643,40.1289301 C6.46903054,42.2001851 5.27403234,44.2266217 4.32765792,46.4195269 C3.62188717,48.0538016 2.6129558,50.6340668 2.90328423,52.4091996 C3.35561912,55.1879467 6.57970823,57.4272712 8.74032914,58.8966778 C11.5393518,60.8014641 14.0961667,63.170442 15.7852045,66.1380671 C19.6990241,73.0225092 19.5690981,81.408371 21.1057535,88.9650906 C21.7601955,92.1760161 22.3969932,95.4045489 23.5534948,98.4842202 C26.3348732,105.89688 31.2720604,112.643666 37.6608897,117.341605 C39.6579001,118.811012 41.6565146,120.144362 43.8829005,121.25362 C44.5405505,121.580155 45.6585555,122.43971 46.3547021,122.257234 C46.0387093,121.600963 44.6095235,120.443686 44.0336788,119.808223 C42.2676479,117.855417 40.5224693,115.808172 39.0531829,113.616867 C33.3364398,105.099751 30.7844369,96.6834769 29.9792167,86.5176802 Z M115.170558,18.5424187 C115.17537,19.017815 115.178579,19.4932112 115.181787,19.9686075 C115.059881,21.6380967 114.966847,23.3059852 114.602734,24.9482632 C113.994808,27.6949971 112.716401,30.3040742 111.425161,32.7834977 C110.947162,33.7006764 110.393774,34.5810398 109.747352,35.3877728 C109.266144,35.9880206 108.518669,36.6827074 108.302126,37.4174107 C109.115366,38.2945728 110.218935,38.9540451 111.102752,39.7735834 C113.013146,41.5487162 114.763136,43.4871164 116.389617,45.5247576 C120.224839,50.3283406 123.01103,56.3212146 124.260565,62.3236925 C124.725732,64.5502116 124.915007,66.7591235 125.198919,69.0048506 C125.206939,69.8692074 125.214959,70.7351649 125.224584,71.5995217 C125.190899,71.9948849 125.158819,72.3886475 125.126738,72.7840107 C125.10749,73.1249515 125.088241,73.4642915 125.070597,73.8052323 C125.089845,74.0821466 125.083429,74.0869486 125.306389,74.2310081 C125.736267,74.2486153 126.166146,74.2678233 126.596024,74.2854305 C128.483961,74.4278893 130.429643,74.4791105 132.315976,74.2886318 C132.623948,74.2710246 132.931921,74.2534173 133.23829,74.2374107 C136.431902,74.2342094 140.254292,73.3698526 143.215322,72.1837629 C143.590663,70.9832673 143.27467,69.4050158 143.221738,68.1613024 C143.09502,65.1744693 142.787047,62.1428178 142.175914,59.2136086 C140.339306,50.4195782 137.193814,41.8768516 132.359284,34.2657096 C130.322173,31.0595861 128.155136,27.7654262 125.466791,25.0523061 C123.081607,22.6449123 120.723691,20.296743 118.107527,18.1310489 C117.446669,17.5852236 115.682242,15.9333417 114.960431,15.8453053 C115.031008,16.7448767 115.101585,17.6428474 115.170558,18.5424187 Z M82.5270571,58.0739381 C83.306613,58.0739381 84.0861689,58.0723374 84.8657248,58.0723374 C90.3867769,58.739813 95.6303327,61.2464478 98.0620338,66.5382323 C98.9442472,68.455824 99.39177,70.4342407 99.7125749,72.5070964 C99.7318232,72.7295882 99.7526755,72.9520801 99.7735278,73.1745719 C99.7751319,73.5123114 99.7767359,73.8500508 99.7767359,74.1893909 L99.7093669,74.972114 C99.2121193,80.2799052 95.45389,85.8854192 89.871885,86.7849906 C88.6592425,86.9802712 87.2894057,87.0026804 86.0928034,86.6713437 C81.6464477,85.4356335 78.9212102,80.8433378 81.6255954,76.60959 C82.2094603,75.694012 83.3611498,74.5783514 84.5368997,75.236223 C84.7694833,75.3658766 85.0020668,75.5931704 85.080664,75.8556788 C85.2458785,76.4127087 84.7614632,76.8144746 84.4711347,77.2338477 C84.0011556,77.9125279 83.7044111,78.5559935 83.6562903,79.3883371 C83.6562903,79.7372812 83.6546863,80.0862252 83.6546863,80.4351693 C83.964263,84.2271346 88.2020956,84.5760787 91.0155544,83.3755831 C94.2845562,81.9798069 96.2318419,78.1190131 96.4772576,74.7192096 C96.4788617,74.0645393 96.4788617,73.4082684 96.4788617,72.7535982 C96.4708415,71.791601 96.2206137,70.8520131 95.976802,69.9268312 C95.3239641,67.4474077 93.8979863,64.9887927 91.8239828,63.4217458 C88.3432497,60.7902595 83.2007474,60.1676024 79.0880287,61.3664973 C72.2067639,63.3721253 67.2374962,69.5074581 65.4137204,76.236636 C64.6967215,78.8825283 64.396769,81.7733217 64.5395271,84.5072503 C64.6421847,86.4728617 65.1185799,88.5041003 65.7184851,90.3736721 C69.3339562,101.65673 80.2589666,108.041766 91.8865397,107.113383 C92.099875,107.092574 92.3148142,107.073366 92.5281495,107.052557 C93.9092145,107.020544 95.3367963,106.633184 96.6665325,106.285841 C99.322797,105.589553 101.738458,104.694784 104.13487,103.342226 C115.204243,97.093246 121.418234,85.9350397 121.753475,73.3506446 C121.787159,72.1197365 121.994078,70.885627 121.880193,69.6531182 C121.860944,69.1809233 121.8433,68.7071277 121.825656,68.2333321 C121.801595,67.799553 121.777535,67.3641733 121.755079,66.9287936 L121.697334,66.275724 C121.517683,63.000772 120.508752,59.8874868 119.353854,56.8462313 C115.343793,46.2866721 106.637148,38.2289457 96.1885332,34.1712706 C95.0416558,33.7262869 93.8306173,33.4685805 92.6468473,33.1452471 C90.1477772,32.4617649 87.4642443,31.9095369 84.8593087,31.8631178 C84.5577521,31.8423092 84.2577995,31.8198999 83.9562429,31.7990914 C81.5806827,31.5013684 79.0655724,31.7446689 76.6932203,31.9703621 C69.3275401,32.6698508 62.170383,35.3845715 56.0365936,39.5190783 C54.1791333,40.770795 52.3713978,42.1713732 50.7352928,43.7032056 C50.217193,44.1882058 49.4841538,44.6459948 49.0767316,45.1998234 C49.6237039,45.9025135 51.8516939,46.6004016 52.7515516,47.1526296 C55.6083191,48.9085545 58.4666906,50.6980932 60.9593446,52.9710315 C63.3365088,55.1383262 65.5195861,57.5265121 67.5374488,60.0251436 C68.1181056,60.7438403 68.600917,61.5777846 69.1093927,62.3509037 C69.3532045,62.7238577 69.4863385,63.2024553 69.8520561,63.4329504 C70.3621358,63.1352275 70.7839943,62.6134121 71.2555774,62.2356561 C71.8699188,61.7442533 72.5997499,61.2704577 73.2926885,60.8975037 C76.4574287,59.1992026 78.9420625,58.4324861 82.5270571,58.0739381 Z M33.0316752,86.7769873 C33.0493194,86.9882745 33.0685677,87.1995617 33.087816,87.4108489 C33.1102724,87.674958 33.1327287,87.9406677 33.1551851,88.2047767 C33.1760374,88.4224666 33.1968897,88.6417571 33.216138,88.859447 C33.4615537,93.757469 34.8362027,98.7707385 36.8476493,103.228579 C37.4587826,104.584338 38.0699159,106.711617 39.1638606,107.728036 C39.8375508,107.680016 40.6572073,107.071765 41.2747567,106.783646 C42.8242443,106.060148 44.4202487,105.458299 45.9633202,104.715593 C48.7831951,103.359833 51.6046741,101.919238 54.293019,100.313776 C55.5297219,99.5742702 56.719908,98.7467286 57.9550068,97.99922 C59.8958764,96.824335 61.9361955,95.7358857 63.742327,94.3577167 C63.609193,93.2244489 62.8793618,92.0671712 62.5489328,90.9627152 C61.9891283,89.0915428 61.7453166,87.1419379 61.4309278,85.221145 C61.4132835,84.9986531 61.3972433,84.777762 61.379599,84.5552701 L61.379599,82.3751701 C61.3988473,82.0262261 61.4164916,81.677282 61.4357398,81.328338 C61.4598002,81.0210111 61.4822566,80.7120836 61.5063169,80.403156 C61.5271692,80.1934695 61.5496256,79.9821823 61.5704779,79.7724957 C62.1527388,75.9885336 63.1488379,72.1949675 65.1971771,68.9024083 C65.7842501,67.9580184 66.4386921,67.0408398 67.1797513,66.2084962 C67.681811,65.6450636 68.405226,65.0576211 68.7500913,64.3997495 C67.8518376,62.5717949 66.4723766,60.9551275 65.1939691,59.3800773 C61.9377995,55.3672207 57.9485907,51.7801399 53.503839,49.1214423 C52.2639281,48.3787357 49.301295,46.3795104 48.0116594,46.2002364 C46.9882918,46.942943 46.1846755,48.1578446 45.3730392,49.1198417 C43.6872095,51.1174663 42.0992253,53.1663121 40.7935494,55.4360491 C36.5108042,62.8743198 34.071083,70.1141085 33.2305742,78.6696404 C32.9643061,81.3843611 32.8343802,84.051062 33.0316752,86.7769873 Z M131.016716,75.6475929 C130.019013,75.6555962 129.022913,75.6635995 128.02521,75.6700021 C127.338688,75.6395895 126.650561,75.609177 125.964039,75.5787644 C125.676918,75.5675598 125.388194,75.5563552 125.101074,75.5467512 C125.088241,75.5707611 125.075409,75.5963717 125.062577,75.6203816 C124.813953,76.5791774 124.83641,77.6756301 124.672799,78.6696404 C124.323122,80.8129252 123.779358,82.8825796 123.147372,84.9554353 C122.667769,86.5272842 121.929917,88.04311 121.216126,89.5189192 C118.522969,95.0844167 114.883438,99.7967621 109.832365,103.452671 C107.790442,104.928481 105.649069,106.314653 103.348898,107.353482 C102.723329,107.635198 102.062471,107.928119 101.408029,108.136205 C100.958902,108.278664 100.482507,108.273862 100.071876,108.505957 C100.089521,109.151024 100.540252,109.645628 100.819352,110.225067 C101.331036,111.284705 101.818659,112.365151 102.267786,113.450399 C103.666495,116.822991 104.816581,120.28522 105.613781,123.851492 C105.915337,125.199249 106.027619,126.580619 106.236142,127.942781 C106.321156,128.501412 106.292283,129.184894 106.64196,129.617072 C107.915556,129.308145 109.011105,128.490207 110.182042,127.931577 C112.924924,126.625437 115.488155,125.122417 117.974393,123.380898 C129.366175,115.400003 137.878732,102.825212 141.200667,89.3348432 C142.124585,85.5828943 142.908953,81.766919 143.054919,77.8917193 C143.09502,76.8480884 143.452717,74.5031204 143.155973,73.6099517 C142.514363,73.617955 141.840673,74.0101169 141.216707,74.1941929 C140.361762,74.4486979 139.487569,74.6407772 138.616584,74.8344572 C136.101473,75.3914871 133.562303,75.3866851 131.016716,75.6475929 Z M83.0628013,134.159748 C83.6562903,134.161348 84.2513834,134.16455 84.8464765,134.16615 C91.4903457,134.297405 98.7726166,132.677536 104.951319,130.262139 C105.32666,128.656676 104.630514,126.830322 104.372266,125.240866 C103.709804,121.189593 102.344779,117.187942 100.755191,113.410382 C100.339748,112.422774 99.7574876,111.528005 99.322797,110.554803 C99.1030456,110.065001 98.9602875,109.395925 98.5817377,109.018169 C97.0611225,109.160628 95.5517355,109.658433 94.0311204,109.861717 C92.0533582,110.125826 90.1140927,110.029786 88.1347266,110.08581 L87.2059964,110.018582 C80.4241811,109.11901 74.1283852,106.916501 69.2120503,101.943248 C67.7684283,100.483446 66.6680676,98.8843854 65.51317,97.2004903 C65.1266001,96.6370577 64.8282515,95.9743841 64.3919569,95.4573707 C63.2899921,95.6702586 60.6754323,97.8519592 59.5622393,98.5658539 C55.6500237,101.077291 51.6351506,103.367836 47.4759152,105.440692 C45.9617161,106.196204 44.3849601,106.911699 42.8098081,107.527954 C41.8586216,107.899307 40.567382,108.184225 39.8215106,108.909324 C40.0204096,109.986569 41.029341,111.174259 41.6372663,112.078632 C43.3198879,114.585267 45.3008581,116.872611 47.4454387,118.996688 C55.3885677,126.859134 65.8195386,132.067684 76.874475,133.706761 C78.8971498,134.006084 81.0192742,134.081315 83.0628013,134.159748 Z" id="形状" stroke-width="9.20227796"></path>
9
+ </g>
10
+ </g>
11
+ </g>
12
+ </g>
13
+ </svg>