@midscene/visualizer 1.5.1-beta-20260302102736.0 → 1.5.1
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.
- package/dist/es/component/config-selector/index.mjs +15 -3
- package/dist/es/component/prompt-input/index.mjs +9 -4
- package/dist/es/hooks/usePlaygroundExecution.mjs +12 -3
- package/dist/es/store/store.mjs +9 -0
- package/dist/es/utils/constants.mjs +2 -1
- package/dist/lib/component/config-selector/index.js +14 -2
- package/dist/lib/component/prompt-input/index.js +9 -4
- package/dist/lib/hooks/usePlaygroundExecution.js +12 -3
- package/dist/lib/store/store.js +9 -0
- package/dist/lib/utils/constants.js +4 -0
- package/dist/types/component/config-selector/index.d.ts +1 -0
- package/dist/types/store/store.d.ts +2 -0
- package/dist/types/utils/constants.d.ts +1 -0
- package/package.json +5 -5
|
@@ -2,10 +2,12 @@ import { jsx, jsxs } from "react/jsx-runtime";
|
|
|
2
2
|
import { Checkbox, Dropdown, Radio } from "antd";
|
|
3
3
|
import setting from "../../icons/setting.mjs";
|
|
4
4
|
import { useEnvConfig } from "../../store/store.mjs";
|
|
5
|
-
import { alwaysRefreshScreenInfoTip, autoDismissKeyboardTip, deepThinkTip, domIncludedTip, imeStrategyTip, keyboardDismissStrategyTip, screenshotIncludedTip, trackingTip } from "../../utils/constants.mjs";
|
|
6
|
-
const ConfigSelector = ({ showDeepThinkOption = false, enableTracking = false, showDataExtractionOptions = false, hideDomAndScreenshotOptions = false, deviceType })=>{
|
|
5
|
+
import { alwaysRefreshScreenInfoTip, autoDismissKeyboardTip, deepLocateTip, deepThinkTip, domIncludedTip, imeStrategyTip, keyboardDismissStrategyTip, screenshotIncludedTip, trackingTip } from "../../utils/constants.mjs";
|
|
6
|
+
const ConfigSelector = ({ showDeepLocateOption = false, showDeepThinkOption = false, enableTracking = false, showDataExtractionOptions = false, hideDomAndScreenshotOptions = false, deviceType })=>{
|
|
7
7
|
const forceSameTabNavigation = useEnvConfig((state)=>state.forceSameTabNavigation);
|
|
8
8
|
const setForceSameTabNavigation = useEnvConfig((state)=>state.setForceSameTabNavigation);
|
|
9
|
+
const deepLocate = useEnvConfig((state)=>state.deepLocate);
|
|
10
|
+
const setDeepLocate = useEnvConfig((state)=>state.setDeepLocate);
|
|
9
11
|
const deepThink = useEnvConfig((state)=>state.deepThink);
|
|
10
12
|
const setDeepThink = useEnvConfig((state)=>state.setDeepThink);
|
|
11
13
|
const screenshotIncluded = useEnvConfig((state)=>state.screenshotIncluded);
|
|
@@ -21,7 +23,7 @@ const ConfigSelector = ({ showDeepThinkOption = false, enableTracking = false, s
|
|
|
21
23
|
const alwaysRefreshScreenInfo = useEnvConfig((state)=>state.alwaysRefreshScreenInfo);
|
|
22
24
|
const setAlwaysRefreshScreenInfo = useEnvConfig((state)=>state.setAlwaysRefreshScreenInfo);
|
|
23
25
|
const hasDeviceOptions = 'android' === deviceType || 'ios' === deviceType;
|
|
24
|
-
if (!enableTracking && !showDeepThinkOption && !showDataExtractionOptions && !hasDeviceOptions) return null;
|
|
26
|
+
if (!enableTracking && !showDeepLocateOption && !showDeepThinkOption && !showDataExtractionOptions && !hasDeviceOptions) return null;
|
|
25
27
|
const configItems = buildConfigItems();
|
|
26
28
|
return /*#__PURE__*/ jsx("div", {
|
|
27
29
|
className: "selector-trigger",
|
|
@@ -48,6 +50,16 @@ const ConfigSelector = ({ showDeepThinkOption = false, enableTracking = false, s
|
|
|
48
50
|
}),
|
|
49
51
|
key: 'track-config'
|
|
50
52
|
});
|
|
53
|
+
if (showDeepLocateOption) items.push({
|
|
54
|
+
label: /*#__PURE__*/ jsx(Checkbox, {
|
|
55
|
+
onChange: (e)=>{
|
|
56
|
+
setDeepLocate(e.target.checked);
|
|
57
|
+
},
|
|
58
|
+
checked: deepLocate,
|
|
59
|
+
children: deepLocateTip
|
|
60
|
+
}),
|
|
61
|
+
key: 'deep-locate-config'
|
|
62
|
+
});
|
|
51
63
|
if (showDeepThinkOption) items.push({
|
|
52
64
|
label: /*#__PURE__*/ jsx(Checkbox, {
|
|
53
65
|
onChange: (e)=>{
|
|
@@ -102,9 +102,8 @@ const PromptInput = ({ runButtonEnabled, form, serviceMode, selectedType, dryMod
|
|
|
102
102
|
}, [
|
|
103
103
|
selectedType
|
|
104
104
|
]);
|
|
105
|
-
const
|
|
106
|
-
if ('aiAct' === selectedType) return true;
|
|
107
|
-
if ('aiLocate' === selectedType) return true;
|
|
105
|
+
const showDeepLocateOption = useMemo(()=>{
|
|
106
|
+
if ('aiAct' === selectedType || 'aiLocate' === selectedType) return true;
|
|
108
107
|
if (actionSpace) {
|
|
109
108
|
const action = actionSpace.find((a)=>a.interfaceAlias === selectedType || a.name === selectedType);
|
|
110
109
|
if ((null == action ? void 0 : action.paramSchema) && isZodObjectSchema(action.paramSchema)) {
|
|
@@ -123,14 +122,19 @@ const PromptInput = ({ runButtonEnabled, form, serviceMode, selectedType, dryMod
|
|
|
123
122
|
selectedType,
|
|
124
123
|
actionSpace
|
|
125
124
|
]);
|
|
125
|
+
const showDeepThinkOption = useMemo(()=>'aiAct' === selectedType, [
|
|
126
|
+
selectedType
|
|
127
|
+
]);
|
|
126
128
|
const hasConfigOptions = useMemo(()=>{
|
|
127
129
|
const hasTracking = 'In-Browser-Extension' === serviceMode;
|
|
130
|
+
const hasDeepLocate = showDeepLocateOption;
|
|
128
131
|
const hasDeepThink = showDeepThinkOption;
|
|
129
132
|
const hasDataExtraction = showDataExtractionOptions && !hideDomAndScreenshotOptions;
|
|
130
133
|
const hasDeviceOptions = 'android' === deviceType || 'ios' === deviceType;
|
|
131
|
-
return hasTracking || hasDeepThink || hasDataExtraction || hasDeviceOptions;
|
|
134
|
+
return hasTracking || hasDeepLocate || hasDeepThink || hasDataExtraction || hasDeviceOptions;
|
|
132
135
|
}, [
|
|
133
136
|
serviceMode,
|
|
137
|
+
showDeepLocateOption,
|
|
134
138
|
showDeepThinkOption,
|
|
135
139
|
showDataExtractionOptions,
|
|
136
140
|
hideDomAndScreenshotOptions,
|
|
@@ -686,6 +690,7 @@ const PromptInput = ({ runButtonEnabled, form, serviceMode, selectedType, dryMod
|
|
|
686
690
|
onMouseLeave: handleMouseLeave,
|
|
687
691
|
children: /*#__PURE__*/ jsx(ConfigSelector, {
|
|
688
692
|
enableTracking: 'In-Browser-Extension' === serviceMode,
|
|
693
|
+
showDeepLocateOption: showDeepLocateOption,
|
|
689
694
|
showDeepThinkOption: showDeepThinkOption,
|
|
690
695
|
showDataExtractionOptions: showDataExtractionOptions,
|
|
691
696
|
hideDomAndScreenshotOptions: hideDomAndScreenshotOptions,
|
|
@@ -110,7 +110,7 @@ function wrapExecutionDumpForReplay(dump) {
|
|
|
110
110
|
};
|
|
111
111
|
}
|
|
112
112
|
function usePlaygroundExecution(playgroundSDK, storage, actionSpace, loading, setLoading, setInfoList, replayCounter, setReplayCounter, verticalMode, currentRunningIdRef, interruptedFlagRef) {
|
|
113
|
-
const { deepThink, screenshotIncluded, domIncluded } = useEnvConfig();
|
|
113
|
+
const { deepLocate, deepThink, screenshotIncluded, domIncluded } = useEnvConfig();
|
|
114
114
|
const handleRun = useCallback((value)=>_async_to_generator(function*() {
|
|
115
115
|
if (!playgroundSDK) return void console.warn('PlaygroundSDK is not available');
|
|
116
116
|
const thisRunningId = Date.now();
|
|
@@ -170,12 +170,20 @@ function usePlaygroundExecution(playgroundSDK, storage, actionSpace, loading, se
|
|
|
170
170
|
];
|
|
171
171
|
});
|
|
172
172
|
});
|
|
173
|
-
|
|
173
|
+
if ('aiAct' !== actionType && deepThink) console.warn('[Playground] Non-aiAct action will be executed without deepThink. deepThink is only forwarded for aiAct.', {
|
|
174
|
+
actionType,
|
|
175
|
+
requestId: thisRunningId.toString()
|
|
176
|
+
});
|
|
177
|
+
const executionOptions = _object_spread_props(_object_spread({
|
|
174
178
|
requestId: thisRunningId.toString(),
|
|
175
|
-
|
|
179
|
+
deepLocate
|
|
180
|
+
}, 'aiAct' === actionType ? {
|
|
181
|
+
deepThink
|
|
182
|
+
} : {}), {
|
|
176
183
|
screenshotIncluded,
|
|
177
184
|
domIncluded
|
|
178
185
|
});
|
|
186
|
+
result.result = yield playgroundSDK.executeAction(actionType, value, executionOptions);
|
|
179
187
|
if ('object' == typeof result.result && null !== result.result) {
|
|
180
188
|
const resultObj = result.result;
|
|
181
189
|
if (resultObj.dump) result.dump = resultObj.dump;
|
|
@@ -253,6 +261,7 @@ function usePlaygroundExecution(playgroundSDK, storage, actionSpace, loading, se
|
|
|
253
261
|
verticalMode,
|
|
254
262
|
currentRunningIdRef,
|
|
255
263
|
interruptedFlagRef,
|
|
264
|
+
deepLocate,
|
|
256
265
|
deepThink,
|
|
257
266
|
screenshotIncluded,
|
|
258
267
|
domIncluded
|
package/dist/es/store/store.mjs
CHANGED
|
@@ -120,6 +120,7 @@ const useGlobalPreference = store_create((set)=>{
|
|
|
120
120
|
const CONFIG_KEY = 'midscene-env-config';
|
|
121
121
|
const SERVICE_MODE_KEY = 'midscene-service-mode';
|
|
122
122
|
const TRACKING_ACTIVE_TAB_KEY = 'midscene-tracking-active-tab';
|
|
123
|
+
const DEEP_LOCATE_KEY = 'midscene-deep-locate';
|
|
123
124
|
const DEEP_THINK_KEY = 'midscene-deep-think';
|
|
124
125
|
const SCREENSHOT_INCLUDED_KEY = 'midscene-screenshot-included';
|
|
125
126
|
const DOM_INCLUDED_KEY = 'midscene-dom-included';
|
|
@@ -154,6 +155,7 @@ const useEnvConfig = store_create((set, get)=>{
|
|
|
154
155
|
const ifInExtension = window.location.href.startsWith('chrome-extension');
|
|
155
156
|
const savedServiceMode = localStorage.getItem(SERVICE_MODE_KEY);
|
|
156
157
|
const savedForceSameTabNavigation = 'false' !== localStorage.getItem(TRACKING_ACTIVE_TAB_KEY);
|
|
158
|
+
const savedDeepLocate = 'true' === localStorage.getItem(DEEP_LOCATE_KEY);
|
|
157
159
|
const savedDeepThink = 'true' === localStorage.getItem(DEEP_THINK_KEY);
|
|
158
160
|
const savedScreenshotIncluded = 'false' !== localStorage.getItem(SCREENSHOT_INCLUDED_KEY);
|
|
159
161
|
const savedDomIncluded = localStorage.getItem(DOM_INCLUDED_KEY) || 'false';
|
|
@@ -198,6 +200,13 @@ const useEnvConfig = store_create((set, get)=>{
|
|
|
198
200
|
});
|
|
199
201
|
localStorage.setItem(TRACKING_ACTIVE_TAB_KEY, forceSameTabNavigation.toString());
|
|
200
202
|
},
|
|
203
|
+
deepLocate: savedDeepLocate,
|
|
204
|
+
setDeepLocate: (deepLocate)=>{
|
|
205
|
+
set({
|
|
206
|
+
deepLocate
|
|
207
|
+
});
|
|
208
|
+
localStorage.setItem(DEEP_LOCATE_KEY, deepLocate.toString());
|
|
209
|
+
},
|
|
201
210
|
deepThink: savedDeepThink,
|
|
202
211
|
setDeepThink: (deepThink)=>{
|
|
203
212
|
set({
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
const trackingTip = 'Limit popup to current tab';
|
|
2
|
+
const deepLocateTip = 'Deep Locate';
|
|
2
3
|
const deepThinkTip = 'Deep Think';
|
|
3
4
|
const screenshotIncludedTip = 'Include screenshot in request';
|
|
4
5
|
const domIncludedTip = 'Include DOM info in request';
|
|
@@ -101,4 +102,4 @@ const BLANK_RESULT = {
|
|
|
101
102
|
reportHTML: null,
|
|
102
103
|
error: null
|
|
103
104
|
};
|
|
104
|
-
export { BLANK_RESULT, WELCOME_MESSAGE_TEMPLATE, alwaysRefreshScreenInfoTip, apiMetadata, autoDismissKeyboardTip, deepThinkTip, defaultMainButtons, domIncludedTip, getWelcomeMessageTemplate, imeStrategyTip, keyboardDismissStrategyTip, screenshotIncludedTip, trackingTip };
|
|
105
|
+
export { BLANK_RESULT, WELCOME_MESSAGE_TEMPLATE, alwaysRefreshScreenInfoTip, apiMetadata, autoDismissKeyboardTip, deepLocateTip, deepThinkTip, defaultMainButtons, domIncludedTip, getWelcomeMessageTemplate, imeStrategyTip, keyboardDismissStrategyTip, screenshotIncludedTip, trackingTip };
|
|
@@ -41,9 +41,11 @@ const setting_js_namespaceObject = require("../../icons/setting.js");
|
|
|
41
41
|
var setting_js_default = /*#__PURE__*/ __webpack_require__.n(setting_js_namespaceObject);
|
|
42
42
|
const store_js_namespaceObject = require("../../store/store.js");
|
|
43
43
|
const constants_js_namespaceObject = require("../../utils/constants.js");
|
|
44
|
-
const ConfigSelector = ({ showDeepThinkOption = false, enableTracking = false, showDataExtractionOptions = false, hideDomAndScreenshotOptions = false, deviceType })=>{
|
|
44
|
+
const ConfigSelector = ({ showDeepLocateOption = false, showDeepThinkOption = false, enableTracking = false, showDataExtractionOptions = false, hideDomAndScreenshotOptions = false, deviceType })=>{
|
|
45
45
|
const forceSameTabNavigation = (0, store_js_namespaceObject.useEnvConfig)((state)=>state.forceSameTabNavigation);
|
|
46
46
|
const setForceSameTabNavigation = (0, store_js_namespaceObject.useEnvConfig)((state)=>state.setForceSameTabNavigation);
|
|
47
|
+
const deepLocate = (0, store_js_namespaceObject.useEnvConfig)((state)=>state.deepLocate);
|
|
48
|
+
const setDeepLocate = (0, store_js_namespaceObject.useEnvConfig)((state)=>state.setDeepLocate);
|
|
47
49
|
const deepThink = (0, store_js_namespaceObject.useEnvConfig)((state)=>state.deepThink);
|
|
48
50
|
const setDeepThink = (0, store_js_namespaceObject.useEnvConfig)((state)=>state.setDeepThink);
|
|
49
51
|
const screenshotIncluded = (0, store_js_namespaceObject.useEnvConfig)((state)=>state.screenshotIncluded);
|
|
@@ -59,7 +61,7 @@ const ConfigSelector = ({ showDeepThinkOption = false, enableTracking = false, s
|
|
|
59
61
|
const alwaysRefreshScreenInfo = (0, store_js_namespaceObject.useEnvConfig)((state)=>state.alwaysRefreshScreenInfo);
|
|
60
62
|
const setAlwaysRefreshScreenInfo = (0, store_js_namespaceObject.useEnvConfig)((state)=>state.setAlwaysRefreshScreenInfo);
|
|
61
63
|
const hasDeviceOptions = 'android' === deviceType || 'ios' === deviceType;
|
|
62
|
-
if (!enableTracking && !showDeepThinkOption && !showDataExtractionOptions && !hasDeviceOptions) return null;
|
|
64
|
+
if (!enableTracking && !showDeepLocateOption && !showDeepThinkOption && !showDataExtractionOptions && !hasDeviceOptions) return null;
|
|
63
65
|
const configItems = buildConfigItems();
|
|
64
66
|
return /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)("div", {
|
|
65
67
|
className: "selector-trigger",
|
|
@@ -86,6 +88,16 @@ const ConfigSelector = ({ showDeepThinkOption = false, enableTracking = false, s
|
|
|
86
88
|
}),
|
|
87
89
|
key: 'track-config'
|
|
88
90
|
});
|
|
91
|
+
if (showDeepLocateOption) items.push({
|
|
92
|
+
label: /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(external_antd_namespaceObject.Checkbox, {
|
|
93
|
+
onChange: (e)=>{
|
|
94
|
+
setDeepLocate(e.target.checked);
|
|
95
|
+
},
|
|
96
|
+
checked: deepLocate,
|
|
97
|
+
children: constants_js_namespaceObject.deepLocateTip
|
|
98
|
+
}),
|
|
99
|
+
key: 'deep-locate-config'
|
|
100
|
+
});
|
|
89
101
|
if (showDeepThinkOption) items.push({
|
|
90
102
|
label: /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(external_antd_namespaceObject.Checkbox, {
|
|
91
103
|
onChange: (e)=>{
|
|
@@ -140,9 +140,8 @@ const PromptInput = ({ runButtonEnabled, form, serviceMode, selectedType, dryMod
|
|
|
140
140
|
}, [
|
|
141
141
|
selectedType
|
|
142
142
|
]);
|
|
143
|
-
const
|
|
144
|
-
if ('aiAct' === selectedType) return true;
|
|
145
|
-
if ('aiLocate' === selectedType) return true;
|
|
143
|
+
const showDeepLocateOption = (0, external_react_namespaceObject.useMemo)(()=>{
|
|
144
|
+
if ('aiAct' === selectedType || 'aiLocate' === selectedType) return true;
|
|
146
145
|
if (actionSpace) {
|
|
147
146
|
const action = actionSpace.find((a)=>a.interfaceAlias === selectedType || a.name === selectedType);
|
|
148
147
|
if ((null == action ? void 0 : action.paramSchema) && (0, external_types_js_namespaceObject.isZodObjectSchema)(action.paramSchema)) {
|
|
@@ -161,14 +160,19 @@ const PromptInput = ({ runButtonEnabled, form, serviceMode, selectedType, dryMod
|
|
|
161
160
|
selectedType,
|
|
162
161
|
actionSpace
|
|
163
162
|
]);
|
|
163
|
+
const showDeepThinkOption = (0, external_react_namespaceObject.useMemo)(()=>'aiAct' === selectedType, [
|
|
164
|
+
selectedType
|
|
165
|
+
]);
|
|
164
166
|
const hasConfigOptions = (0, external_react_namespaceObject.useMemo)(()=>{
|
|
165
167
|
const hasTracking = 'In-Browser-Extension' === serviceMode;
|
|
168
|
+
const hasDeepLocate = showDeepLocateOption;
|
|
166
169
|
const hasDeepThink = showDeepThinkOption;
|
|
167
170
|
const hasDataExtraction = showDataExtractionOptions && !hideDomAndScreenshotOptions;
|
|
168
171
|
const hasDeviceOptions = 'android' === deviceType || 'ios' === deviceType;
|
|
169
|
-
return hasTracking || hasDeepThink || hasDataExtraction || hasDeviceOptions;
|
|
172
|
+
return hasTracking || hasDeepLocate || hasDeepThink || hasDataExtraction || hasDeviceOptions;
|
|
170
173
|
}, [
|
|
171
174
|
serviceMode,
|
|
175
|
+
showDeepLocateOption,
|
|
172
176
|
showDeepThinkOption,
|
|
173
177
|
showDataExtractionOptions,
|
|
174
178
|
hideDomAndScreenshotOptions,
|
|
@@ -724,6 +728,7 @@ const PromptInput = ({ runButtonEnabled, form, serviceMode, selectedType, dryMod
|
|
|
724
728
|
onMouseLeave: handleMouseLeave,
|
|
725
729
|
children: /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(index_js_namespaceObject.ConfigSelector, {
|
|
726
730
|
enableTracking: 'In-Browser-Extension' === serviceMode,
|
|
731
|
+
showDeepLocateOption: showDeepLocateOption,
|
|
727
732
|
showDeepThinkOption: showDeepThinkOption,
|
|
728
733
|
showDataExtractionOptions: showDataExtractionOptions,
|
|
729
734
|
hideDomAndScreenshotOptions: hideDomAndScreenshotOptions,
|
|
@@ -138,7 +138,7 @@ function wrapExecutionDumpForReplay(dump) {
|
|
|
138
138
|
};
|
|
139
139
|
}
|
|
140
140
|
function usePlaygroundExecution(playgroundSDK, storage, actionSpace, loading, setLoading, setInfoList, replayCounter, setReplayCounter, verticalMode, currentRunningIdRef, interruptedFlagRef) {
|
|
141
|
-
const { deepThink, screenshotIncluded, domIncluded } = (0, store_js_namespaceObject.useEnvConfig)();
|
|
141
|
+
const { deepLocate, deepThink, screenshotIncluded, domIncluded } = (0, store_js_namespaceObject.useEnvConfig)();
|
|
142
142
|
const handleRun = (0, external_react_namespaceObject.useCallback)((value)=>_async_to_generator(function*() {
|
|
143
143
|
if (!playgroundSDK) return void console.warn('PlaygroundSDK is not available');
|
|
144
144
|
const thisRunningId = Date.now();
|
|
@@ -198,12 +198,20 @@ function usePlaygroundExecution(playgroundSDK, storage, actionSpace, loading, se
|
|
|
198
198
|
];
|
|
199
199
|
});
|
|
200
200
|
});
|
|
201
|
-
|
|
201
|
+
if ('aiAct' !== actionType && deepThink) console.warn('[Playground] Non-aiAct action will be executed without deepThink. deepThink is only forwarded for aiAct.', {
|
|
202
|
+
actionType,
|
|
203
|
+
requestId: thisRunningId.toString()
|
|
204
|
+
});
|
|
205
|
+
const executionOptions = _object_spread_props(_object_spread({
|
|
202
206
|
requestId: thisRunningId.toString(),
|
|
203
|
-
|
|
207
|
+
deepLocate
|
|
208
|
+
}, 'aiAct' === actionType ? {
|
|
209
|
+
deepThink
|
|
210
|
+
} : {}), {
|
|
204
211
|
screenshotIncluded,
|
|
205
212
|
domIncluded
|
|
206
213
|
});
|
|
214
|
+
result.result = yield playgroundSDK.executeAction(actionType, value, executionOptions);
|
|
207
215
|
if ('object' == typeof result.result && null !== result.result) {
|
|
208
216
|
const resultObj = result.result;
|
|
209
217
|
if (resultObj.dump) result.dump = resultObj.dump;
|
|
@@ -281,6 +289,7 @@ function usePlaygroundExecution(playgroundSDK, storage, actionSpace, loading, se
|
|
|
281
289
|
verticalMode,
|
|
282
290
|
currentRunningIdRef,
|
|
283
291
|
interruptedFlagRef,
|
|
292
|
+
deepLocate,
|
|
284
293
|
deepThink,
|
|
285
294
|
screenshotIncluded,
|
|
286
295
|
domIncluded
|
package/dist/lib/store/store.js
CHANGED
|
@@ -122,6 +122,7 @@ const useGlobalPreference = create((set)=>{
|
|
|
122
122
|
const CONFIG_KEY = 'midscene-env-config';
|
|
123
123
|
const SERVICE_MODE_KEY = 'midscene-service-mode';
|
|
124
124
|
const TRACKING_ACTIVE_TAB_KEY = 'midscene-tracking-active-tab';
|
|
125
|
+
const DEEP_LOCATE_KEY = 'midscene-deep-locate';
|
|
125
126
|
const DEEP_THINK_KEY = 'midscene-deep-think';
|
|
126
127
|
const SCREENSHOT_INCLUDED_KEY = 'midscene-screenshot-included';
|
|
127
128
|
const DOM_INCLUDED_KEY = 'midscene-dom-included';
|
|
@@ -156,6 +157,7 @@ const useEnvConfig = create((set, get)=>{
|
|
|
156
157
|
const ifInExtension = window.location.href.startsWith('chrome-extension');
|
|
157
158
|
const savedServiceMode = localStorage.getItem(SERVICE_MODE_KEY);
|
|
158
159
|
const savedForceSameTabNavigation = 'false' !== localStorage.getItem(TRACKING_ACTIVE_TAB_KEY);
|
|
160
|
+
const savedDeepLocate = 'true' === localStorage.getItem(DEEP_LOCATE_KEY);
|
|
159
161
|
const savedDeepThink = 'true' === localStorage.getItem(DEEP_THINK_KEY);
|
|
160
162
|
const savedScreenshotIncluded = 'false' !== localStorage.getItem(SCREENSHOT_INCLUDED_KEY);
|
|
161
163
|
const savedDomIncluded = localStorage.getItem(DOM_INCLUDED_KEY) || 'false';
|
|
@@ -200,6 +202,13 @@ const useEnvConfig = create((set, get)=>{
|
|
|
200
202
|
});
|
|
201
203
|
localStorage.setItem(TRACKING_ACTIVE_TAB_KEY, forceSameTabNavigation.toString());
|
|
202
204
|
},
|
|
205
|
+
deepLocate: savedDeepLocate,
|
|
206
|
+
setDeepLocate: (deepLocate)=>{
|
|
207
|
+
set({
|
|
208
|
+
deepLocate
|
|
209
|
+
});
|
|
210
|
+
localStorage.setItem(DEEP_LOCATE_KEY, deepLocate.toString());
|
|
211
|
+
},
|
|
203
212
|
deepThink: savedDeepThink,
|
|
204
213
|
setDeepThink: (deepThink)=>{
|
|
205
214
|
set({
|
|
@@ -29,6 +29,7 @@ __webpack_require__.d(__webpack_exports__, {
|
|
|
29
29
|
alwaysRefreshScreenInfoTip: ()=>alwaysRefreshScreenInfoTip,
|
|
30
30
|
apiMetadata: ()=>apiMetadata,
|
|
31
31
|
autoDismissKeyboardTip: ()=>autoDismissKeyboardTip,
|
|
32
|
+
deepLocateTip: ()=>deepLocateTip,
|
|
32
33
|
deepThinkTip: ()=>deepThinkTip,
|
|
33
34
|
defaultMainButtons: ()=>defaultMainButtons,
|
|
34
35
|
domIncludedTip: ()=>domIncludedTip,
|
|
@@ -39,6 +40,7 @@ __webpack_require__.d(__webpack_exports__, {
|
|
|
39
40
|
trackingTip: ()=>trackingTip
|
|
40
41
|
});
|
|
41
42
|
const trackingTip = 'Limit popup to current tab';
|
|
43
|
+
const deepLocateTip = 'Deep Locate';
|
|
42
44
|
const deepThinkTip = 'Deep Think';
|
|
43
45
|
const screenshotIncludedTip = 'Include screenshot in request';
|
|
44
46
|
const domIncludedTip = 'Include DOM info in request';
|
|
@@ -146,6 +148,7 @@ exports.WELCOME_MESSAGE_TEMPLATE = __webpack_exports__.WELCOME_MESSAGE_TEMPLATE;
|
|
|
146
148
|
exports.alwaysRefreshScreenInfoTip = __webpack_exports__.alwaysRefreshScreenInfoTip;
|
|
147
149
|
exports.apiMetadata = __webpack_exports__.apiMetadata;
|
|
148
150
|
exports.autoDismissKeyboardTip = __webpack_exports__.autoDismissKeyboardTip;
|
|
151
|
+
exports.deepLocateTip = __webpack_exports__.deepLocateTip;
|
|
149
152
|
exports.deepThinkTip = __webpack_exports__.deepThinkTip;
|
|
150
153
|
exports.defaultMainButtons = __webpack_exports__.defaultMainButtons;
|
|
151
154
|
exports.domIncludedTip = __webpack_exports__.domIncludedTip;
|
|
@@ -160,6 +163,7 @@ for(var __rspack_i in __webpack_exports__)if (-1 === [
|
|
|
160
163
|
"alwaysRefreshScreenInfoTip",
|
|
161
164
|
"apiMetadata",
|
|
162
165
|
"autoDismissKeyboardTip",
|
|
166
|
+
"deepLocateTip",
|
|
163
167
|
"deepThinkTip",
|
|
164
168
|
"defaultMainButtons",
|
|
165
169
|
"domIncludedTip",
|
|
@@ -34,6 +34,8 @@ export declare const useEnvConfig: Z.UseBoundStore<Z.StoreApi<{
|
|
|
34
34
|
syncFromStorage: () => void;
|
|
35
35
|
forceSameTabNavigation: boolean;
|
|
36
36
|
setForceSameTabNavigation: (forceSameTabNavigation: boolean) => void;
|
|
37
|
+
deepLocate: boolean;
|
|
38
|
+
setDeepLocate: (deepLocate: boolean) => void;
|
|
37
39
|
deepThink: boolean;
|
|
38
40
|
setDeepThink: (deepThink: boolean) => void;
|
|
39
41
|
screenshotIncluded: boolean;
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import type { InfoListItem, PlaygroundResult } from '../types';
|
|
2
2
|
export declare const trackingTip = "Limit popup to current tab";
|
|
3
|
+
export declare const deepLocateTip = "Deep Locate";
|
|
3
4
|
export declare const deepThinkTip = "Deep Think";
|
|
4
5
|
export declare const screenshotIncludedTip = "Include screenshot in request";
|
|
5
6
|
export declare const domIncludedTip = "Include DOM info in request";
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@midscene/visualizer",
|
|
3
|
-
"version": "1.5.1
|
|
3
|
+
"version": "1.5.1",
|
|
4
4
|
"repository": "https://github.com/web-infra-dev/midscene",
|
|
5
5
|
"homepage": "https://midscenejs.com/",
|
|
6
6
|
"types": "./dist/types/index.d.ts",
|
|
@@ -60,10 +60,10 @@
|
|
|
60
60
|
"antd": "^5.21.6",
|
|
61
61
|
"buffer": "6.0.3",
|
|
62
62
|
"dayjs": "^1.11.11",
|
|
63
|
-
"@midscene/core": "1.5.1
|
|
64
|
-
"@midscene/
|
|
65
|
-
"@midscene/
|
|
66
|
-
"@midscene/web": "1.5.1
|
|
63
|
+
"@midscene/core": "1.5.1",
|
|
64
|
+
"@midscene/playground": "1.5.1",
|
|
65
|
+
"@midscene/shared": "1.5.1",
|
|
66
|
+
"@midscene/web": "1.5.1"
|
|
67
67
|
},
|
|
68
68
|
"license": "MIT",
|
|
69
69
|
"scripts": {
|