@incodetech/web 0.0.0-dev-20261006-d3ecf03a → 0.0.0-dev-20261007-aea7fe12

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.
@@ -5,7 +5,7 @@ import { t as TransitionSpinner } from "../transitionSpinner-D9vhKkvp.js";
5
5
  import { b as ErrorIcon } from "../icons-HCPmeKPj.js";
6
6
  import { t as StatusPage } from "../statusPage-CXrVp72g.js";
7
7
  import { t as registerIncodeModuleElement } from "../incodeModule-B0OTnyXA.js";
8
- import { a as LAZY_UI_MODULES, c as initializeFlowManager, f as warmupWasmIfNeeded, i as HEADLESS_FLOW_MODULE_KEYS, l as preloadFirstModule, m as resolveSessionLanguage, n as extractIncodeStatus, o as createFlowManager, r as UnsupportedModule, s as fetchTheme, t as resolveApiKey, u as preloadHomeScreen } from "../resolveApiKey-CGWAVTPJ.js";
8
+ import { a as HEADLESS_FLOW_MODULE_KEYS, c as fetchTheme, d as preloadHomeScreen, h as resolveSessionLanguage, i as UnsupportedModule, l as initializeFlowManager, n as resolveApiKey, o as LAZY_UI_MODULES, p as warmupWasmIfNeeded, r as extractIncodeStatus, s as createFlowManager, t as withEndScreenTexts, u as preloadFirstModule } from "../withEndScreenTexts-4lFk-kYZ.js";
9
9
  import { i as usePrefetchNextModule, n as useModuleLoader, r as useModulePreloader } from "../useModuleLoader-BdIp6TNQ.js";
10
10
  import { bootstrapSession, refreshQrUrlUuid } from "@incodetech/core/session";
11
11
  import { getNextRequiredWasmPipelines } from "@incodetech/core/flow";
@@ -620,7 +620,7 @@ var IncodeFlowContent = ({ config, onFinish, onError, initState, flowState, flow
620
620
  if (terminalFiredRef.current) return;
621
621
  if (flowState?.status === "finished") {
622
622
  terminalFiredRef.current = true;
623
- const finishStatus = flowState.finishStatus;
623
+ const finishStatus = withEndScreenTexts(flowState.finishStatus, flowManager.getEndScreenTexts());
624
624
  queueMicrotask(() => onFinish(finishStatus));
625
625
  return;
626
626
  }
@@ -633,7 +633,8 @@ var IncodeFlowContent = ({ config, onFinish, onError, initState, flowState, flow
633
633
  flowState?.status,
634
634
  onFinish,
635
635
  onError,
636
- flowState
636
+ flowState,
637
+ flowManager
637
638
  ]);
638
639
  y(() => {
639
640
  if (flowState?.status === "ready" && flowState.currentStep === "ID" && flowState.steps.includes("TUTORIAL_ID")) flowManager.completeModule();
@@ -195,6 +195,9 @@ function createFlowManager(options = {}) {
195
195
  endScreenText
196
196
  };
197
197
  },
198
+ getEndScreenTexts() {
199
+ return endScreen;
200
+ },
198
201
  setInterviewId(nextInterviewId) {
199
202
  interviewId = nextInterviewId;
200
203
  }
@@ -317,4 +320,22 @@ async function resolveApiKey(config) {
317
320
  throw new Error("Self-loading mode requires apiKey or clientId");
318
321
  }
319
322
  //#endregion
320
- export { LAZY_UI_MODULES as a, initializeFlowManager as c, setupSDK as d, warmupWasmIfNeeded as f, HEADLESS_FLOW_MODULE_KEYS as i, preloadFirstModule as l, resolveSessionLanguage as m, extractIncodeStatus as n, createFlowManager as o, isDesktopOrEmulated$1 as p, UnsupportedModule as r, fetchTheme as s, resolveApiKey as t, preloadHomeScreen as u };
323
+ //#region src/modules/flow/withEndScreenTexts.ts
324
+ /**
325
+ * Fills the dashboard end-screen copy (captured from POST /omni/start) into a
326
+ * finish result that lacks it. Normal finishes already carry it via the
327
+ * manager's getFinishStatus wrapper; the desktop finish after a
328
+ * REDIRECT_TO_MOBILE handoff skips that call, so its result has `null` copy.
329
+ * Only empty fields are filled — values already present are kept, and with no
330
+ * copy captured (token mode, preload) the result is returned unchanged.
331
+ */
332
+ function withEndScreenTexts(finishStatus, texts) {
333
+ if (texts.endScreenTitle === null && texts.endScreenText === null) return finishStatus;
334
+ return {
335
+ ...finishStatus,
336
+ endScreenTitle: finishStatus.endScreenTitle ?? texts.endScreenTitle,
337
+ endScreenText: finishStatus.endScreenText ?? texts.endScreenText
338
+ };
339
+ }
340
+ //#endregion
341
+ export { HEADLESS_FLOW_MODULE_KEYS as a, fetchTheme as c, preloadHomeScreen as d, setupSDK as f, resolveSessionLanguage as h, UnsupportedModule as i, initializeFlowManager as l, isDesktopOrEmulated$1 as m, resolveApiKey as n, LAZY_UI_MODULES as o, warmupWasmIfNeeded as p, extractIncodeStatus as r, createFlowManager as s, withEndScreenTexts as t, preloadFirstModule as u };
@@ -6,7 +6,7 @@ import { t as TransitionSpinner } from "../transitionSpinner-D9vhKkvp.js";
6
6
  import { t as Page } from "../page-DJZ7Trh5.js";
7
7
  import { t as AutoFocusTitle } from "../autoFocusTitle-Dbw5U8T0.js";
8
8
  import { t as registerIncodeModuleElement } from "../incodeModule-B0OTnyXA.js";
9
- import { a as LAZY_UI_MODULES, d as setupSDK, m as resolveSessionLanguage, n as extractIncodeStatus, p as isDesktopOrEmulated, r as UnsupportedModule, t as resolveApiKey } from "../resolveApiKey-CGWAVTPJ.js";
9
+ import { f as setupSDK, h as resolveSessionLanguage, i as UnsupportedModule, m as isDesktopOrEmulated, n as resolveApiKey, o as LAZY_UI_MODULES, r as extractIncodeStatus, t as withEndScreenTexts } from "../withEndScreenTexts-4lFk-kYZ.js";
10
10
  import { a as HEADLESS_WORKFLOW_MODULE_KEYS, n as useModuleLoader } from "../useModuleLoader-BdIp6TNQ.js";
11
11
  import { resolveWasmConfigForPipelines, setWasmConfig, upgradeToWasmHttpClient, warmupWasm } from "@incodetech/core/wasm";
12
12
  import { bootstrapSession, getFinishStatus, refreshQrUrlUuid } from "@incodetech/core/session";
@@ -167,12 +167,17 @@ function createWorkflowUIManager(options = {}) {
167
167
  };
168
168
  }
169
169
  });
170
- return Object.assign(manager, { setEndScreenTexts(endScreenTitle, endScreenText) {
171
- endScreen = {
172
- endScreenTitle,
173
- endScreenText
174
- };
175
- } });
170
+ return Object.assign(manager, {
171
+ setEndScreenTexts(endScreenTitle, endScreenText) {
172
+ endScreen = {
173
+ endScreenTitle,
174
+ endScreenText
175
+ };
176
+ },
177
+ getEndScreenTexts() {
178
+ return endScreen;
179
+ }
180
+ });
176
181
  }
177
182
  function warmupWorkflowWasm(wasmConfig) {
178
183
  if (wasmConfig === false) return;
@@ -369,7 +374,7 @@ var IncodeWorkflowReady = ({ config, workflowManager: initialManager, onFinish,
369
374
  if (terminalFiredRef.current) return;
370
375
  if (workflowState?.status === "finished") {
371
376
  terminalFiredRef.current = true;
372
- const finishStatus = workflowState.finishStatus;
377
+ const finishStatus = withEndScreenTexts(workflowState.finishStatus, initialManager.getEndScreenTexts());
373
378
  const oauth2Secured = workflowState.workflowConfig.oauth2Secured === true;
374
379
  queueMicrotask(() => onFinish?.(finishStatus, {
375
380
  sdkOwnsTerminalScreen: showFinishScreen,
@@ -391,7 +396,8 @@ var IncodeWorkflowReady = ({ config, workflowManager: initialManager, onFinish,
391
396
  workflowState,
392
397
  onFinish,
393
398
  onError,
394
- showFinishScreen
399
+ showFinishScreen,
400
+ initialManager
395
401
  ]);
396
402
  const spinnerRenderMode = config.spinnerConfig?.title || config.spinnerConfig?.subtitle ? "spinnerAndText" : "spinnerOnly";
397
403
  const renderSpinner = () => /* @__PURE__ */ u("div", {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@incodetech/web",
3
- "version": "0.0.0-dev-20261006-d3ecf03a",
3
+ "version": "0.0.0-dev-20261007-aea7fe12",
4
4
  "license": "ISC",
5
5
  "repository": {
6
6
  "type": "git",
@@ -287,7 +287,7 @@
287
287
  ],
288
288
  "dependencies": {
289
289
  "preact": "^10.27.2",
290
- "@incodetech/core": "0.0.0-dev-20261006-d3ecf03a"
290
+ "@incodetech/core": "0.0.0-dev-20261007-aea7fe12"
291
291
  },
292
292
  "devDependencies": {
293
293
  "@fontsource/dm-sans": "^5.2.8",