@qontinui/ui-bridge-native 0.6.9 → 0.6.10

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.
@@ -935,9 +935,10 @@ var DefaultNativeActionExecutor = class {
935
935
  requestId: request.requestId,
936
936
  durationMs: successTime - startTime
937
937
  });
938
+ const fresh = this.registry.getElement(registered.id) ?? registered;
938
939
  return {
939
940
  success: true,
940
- elementState: registered.getState(),
941
+ elementState: fresh.getState(),
941
942
  result,
942
943
  durationMs: successTime - startTime,
943
944
  timestamp: successTime,
@@ -2108,6 +2109,13 @@ function matchElementsByText(registry, text, opts) {
2108
2109
  scored.sort((a, b) => a.rank - b.rank);
2109
2110
  return scored.map((s) => s.element);
2110
2111
  }
2112
+ function resolveElementState(element) {
2113
+ const state = element.getState();
2114
+ if (element.type === "input" && state.value === void 0 && typeof element.props?.value === "string") {
2115
+ return { ...state, value: element.props.value };
2116
+ }
2117
+ return state;
2118
+ }
2111
2119
  async function executeWorkflowStep(step, registry, executor) {
2112
2120
  const startTime = Date.now();
2113
2121
  try {
@@ -2344,7 +2352,7 @@ function createServerHandlers(registry, executor, config) {
2344
2352
  type: element.type,
2345
2353
  label: element.label,
2346
2354
  identifier: element.getIdentifier(),
2347
- state: element.getState(),
2355
+ state: resolveElementState(element),
2348
2356
  actions: element.actions,
2349
2357
  customActions: element.customActions ? Object.keys(element.customActions) : void 0,
2350
2358
  registeredHandlers: handlers.length > 0 ? handlers : void 0,
@@ -2358,18 +2366,19 @@ function createServerHandlers(registry, executor, config) {
2358
2366
  if (!element) {
2359
2367
  return error2(`Element not found: ${id}`, "ELEMENT_NOT_FOUND");
2360
2368
  }
2361
- return success2({ state: element.getState() });
2369
+ return success2({ state: resolveElementState(element) });
2362
2370
  },
2363
2371
  executeAction: async (ctx) => {
2364
- const { id } = ctx.params;
2365
- const body = ctx.body;
2366
- if (!body?.action) {
2372
+ const rawBody = ctx.body ?? {};
2373
+ const envelope = rawBody.request && typeof rawBody.request === "object" ? rawBody.request : rawBody;
2374
+ const id = ctx.params.id ?? rawBody.id ?? "";
2375
+ if (!envelope?.action) {
2367
2376
  return error2("Action is required", "INVALID_REQUEST");
2368
2377
  }
2369
2378
  const response = await executor.executeAction(id, {
2370
- action: body.action,
2371
- params: body.params,
2372
- waitOptions: body.waitOptions
2379
+ action: envelope.action,
2380
+ params: envelope.params,
2381
+ waitOptions: envelope.waitOptions
2373
2382
  });
2374
2383
  if (!response.success) {
2375
2384
  return error2(response.error || "Action failed", "ACTION_FAILED");
@@ -3008,7 +3017,7 @@ function createServerHandlers(registry, executor, config) {
3008
3017
  };
3009
3018
  if (config?.appInfo) {
3010
3019
  response.uiBridge = {
3011
- version: "0.3.0",
3020
+ version: "0.6.10",
3012
3021
  ...config.appInfo,
3013
3022
  capabilities: ["elements", "components", "actions", "design"],
3014
3023
  elementCount: stats.elements,