|
4 | 4 | """ |
5 | 5 |
|
6 | 6 | # --- 输入相关选择器 --- |
7 | | -PROMPT_TEXTAREA_SELECTOR = 'ms-prompt-input-wrapper ms-autosize-textarea textarea' |
| 7 | +PROMPT_TEXTAREA_SELECTOR = "ms-prompt-input-wrapper ms-autosize-textarea textarea" |
8 | 8 | INPUT_SELECTOR = PROMPT_TEXTAREA_SELECTOR |
9 | 9 | INPUT_SELECTOR2 = PROMPT_TEXTAREA_SELECTOR |
10 | 10 |
|
11 | 11 | # --- 按钮选择器 --- |
12 | 12 | # 发送按钮:优先匹配 aria-label="Run" 的按钮;如页面结构变更,可退化到容器内的提交按钮。 |
13 | 13 | SUBMIT_BUTTON_SELECTOR = 'button[aria-label="Run"].run-button, ms-run-button button[type="submit"].run-button' |
14 | | -CLEAR_CHAT_BUTTON_SELECTOR = 'button[data-test-clear="outside"][aria-label="New chat"]' |
15 | | -CLEAR_CHAT_CONFIRM_BUTTON_SELECTOR = 'button.ms-button-primary:has-text("Discard and continue")' |
| 14 | +CLEAR_CHAT_BUTTON_SELECTOR = 'button[data-test-clear="outside"][aria-label="New chat"], button[aria-label="New chat"]' |
| 15 | +CLEAR_CHAT_CONFIRM_BUTTON_SELECTOR = ( |
| 16 | + 'button.ms-button-primary:has-text("Discard and continue")' |
| 17 | +) |
16 | 18 | UPLOAD_BUTTON_SELECTOR = 'button[aria-label^="Insert assets"]' |
17 | 19 |
|
18 | 20 | # --- 响应相关选择器 --- |
19 | | -RESPONSE_CONTAINER_SELECTOR = 'ms-chat-turn .chat-turn-container.model' |
20 | | -RESPONSE_TEXT_SELECTOR = 'ms-cmark-node.cmark-node' |
| 21 | +RESPONSE_CONTAINER_SELECTOR = "ms-chat-turn .chat-turn-container.model" |
| 22 | +RESPONSE_TEXT_SELECTOR = "ms-cmark-node.cmark-node" |
21 | 23 |
|
22 | 24 | # --- 加载和状态选择器 --- |
23 | 25 | LOADING_SPINNER_SELECTOR = 'button[aria-label="Run"].run-button svg .stoppable-spinner' |
24 | | -OVERLAY_SELECTOR = '.mat-mdc-dialog-inner-container' |
| 26 | +OVERLAY_SELECTOR = ".mat-mdc-dialog-inner-container" |
25 | 27 |
|
26 | 28 | # --- 错误提示选择器 --- |
27 | | -ERROR_TOAST_SELECTOR = 'div.toast.warning, div.toast.error' |
| 29 | +ERROR_TOAST_SELECTOR = "div.toast.warning, div.toast.error" |
28 | 30 |
|
29 | 31 | # --- 编辑相关选择器 --- |
30 | | -EDIT_MESSAGE_BUTTON_SELECTOR = 'ms-chat-turn:last-child .actions-container button.toggle-edit-button' |
31 | | -MESSAGE_TEXTAREA_SELECTOR = 'ms-chat-turn:last-child ms-text-chunk ms-autosize-textarea' |
| 32 | +EDIT_MESSAGE_BUTTON_SELECTOR = ( |
| 33 | + "ms-chat-turn:last-child .actions-container button.toggle-edit-button" |
| 34 | +) |
| 35 | +MESSAGE_TEXTAREA_SELECTOR = "ms-chat-turn:last-child ms-text-chunk ms-autosize-textarea" |
32 | 36 | FINISH_EDIT_BUTTON_SELECTOR = 'ms-chat-turn:last-child .actions-container button.toggle-edit-button[aria-label="Stop editing"]' |
33 | 37 |
|
34 | 38 | # --- 菜单和复制相关选择器 --- |
35 | | -MORE_OPTIONS_BUTTON_SELECTOR = 'div.actions-container div ms-chat-turn-options div > button' |
36 | | -COPY_MARKDOWN_BUTTON_SELECTOR = 'button.mat-mdc-menu-item:nth-child(4)' |
| 39 | +MORE_OPTIONS_BUTTON_SELECTOR = ( |
| 40 | + "div.actions-container div ms-chat-turn-options div > button" |
| 41 | +) |
| 42 | +COPY_MARKDOWN_BUTTON_SELECTOR = "button.mat-mdc-menu-item:nth-child(4)" |
37 | 43 | COPY_MARKDOWN_BUTTON_SELECTOR_ALT = 'div[role="menu"] button:has-text("Copy Markdown")' |
38 | 44 |
|
39 | 45 | # --- 设置相关选择器 --- |
40 | 46 | MAX_OUTPUT_TOKENS_SELECTOR = 'input[aria-label="Maximum output tokens"]' |
41 | 47 | STOP_SEQUENCE_INPUT_SELECTOR = 'input[aria-label="Add stop token"]' |
42 | | -MAT_CHIP_REMOVE_BUTTON_SELECTOR = 'mat-chip-set mat-chip-row button[aria-label*="Remove"]' |
| 48 | +MAT_CHIP_REMOVE_BUTTON_SELECTOR = ( |
| 49 | + 'mat-chip-set mat-chip-row button[aria-label*="Remove"]' |
| 50 | +) |
43 | 51 | TOP_P_INPUT_SELECTOR = 'ms-slider input[type="number"][max="1"]' |
44 | 52 | TEMPERATURE_INPUT_SELECTOR = 'ms-slider input[type="number"][max="2"]' |
45 | 53 | USE_URL_CONTEXT_SELECTOR = 'button[aria-label="Browse the url context"]' |
46 | 54 |
|
47 | 55 | # --- 思考模式相关选择器 --- |
48 | 56 | # 主思考开关:控制是否启用思考模式(总开关) |
49 | | -ENABLE_THINKING_MODE_TOGGLE_SELECTOR = '[data-test-toggle="enable-thinking"] button' |
| 57 | +ENABLE_THINKING_MODE_TOGGLE_SELECTOR = ( |
| 58 | + 'mat-slide-toggle[data-test-toggle="enable-thinking"] button[role="switch"].mdc-switch, ' |
| 59 | + '[data-test-toggle="enable-thinking"] button[role="switch"].mdc-switch' |
| 60 | +) |
50 | 61 | # 手动预算开关:控制是否手动限制思考预算 |
51 | | -SET_THINKING_BUDGET_TOGGLE_SELECTOR = '[data-test-toggle="manual-budget"] button' |
| 62 | +SET_THINKING_BUDGET_TOGGLE_SELECTOR = ( |
| 63 | + 'mat-slide-toggle[data-test-toggle="manual-budget"] button[role="switch"].mdc-switch, ' |
| 64 | + '[data-test-toggle="manual-budget"] button[role="switch"].mdc-switch' |
| 65 | +) |
52 | 66 | # 思考预算输入框 |
53 | 67 | THINKING_BUDGET_INPUT_SELECTOR = '[data-test-slider] input[type="number"]' |
54 | 68 |
|
| 69 | +# 思考等级下拉 |
| 70 | +THINKING_LEVEL_SELECT_SELECTOR = '[role="combobox"][aria-label="Thinking Level"], mat-select[aria-label="Thinking Level"], [role="combobox"][aria-label="Thinking level"], mat-select[aria-label="Thinking level"]' |
| 71 | +THINKING_LEVEL_OPTION_LOW_SELECTOR = '[role="listbox"][aria-label="Thinking Level"] [role="option"]:has-text("Low"), [role="listbox"][aria-label="Thinking level"] [role="option"]:has-text("Low")' |
| 72 | +THINKING_LEVEL_OPTION_HIGH_SELECTOR = '[role="listbox"][aria-label="Thinking Level"] [role="option"]:has-text("High"), [role="listbox"][aria-label="Thinking level"] [role="option"]:has-text("High")' |
| 73 | + |
55 | 74 | # --- Google Search Grounding --- |
56 | | -GROUNDING_WITH_GOOGLE_SEARCH_TOGGLE_SELECTOR = 'div[data-test-id="searchAsAToolTooltip"] mat-slide-toggle button' |
| 75 | +GROUNDING_WITH_GOOGLE_SEARCH_TOGGLE_SELECTOR = ( |
| 76 | + 'div[data-test-id="searchAsAToolTooltip"] mat-slide-toggle button' |
| 77 | +) |
0 commit comments