@pygmalionjs/pygmalion 0.6.17 → 0.6.18

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.
@@ -1,4 +1,4 @@
1
- import { F as s, N as a, e as r, s as i, a as t } from "./FrozenRoutePreview-BBgXrlKF.js";
1
+ import { F as s, N as a, e as r, s as i, a as t } from "./FrozenRoutePreview-CZSFEQgN.js";
2
2
  export {
3
3
  s as FrozenRoutePreviewView,
4
4
  a as NodeModel,
@@ -60,6 +60,14 @@ export interface DesignScreenInteraction {
60
60
  settleMs?: number;
61
61
  optional?: boolean;
62
62
  }
63
+ /** Timing policy for replaying a screen recipe outside the capture pipeline. */
64
+ export interface DesignScreenInteractionRunOptions {
65
+ /**
66
+ * Fallback pause after click, focus, hover, fill, check, and press steps.
67
+ * The capture default is 600ms. A step's explicit `settleMs` always wins.
68
+ */
69
+ defaultActionSettleMs?: number;
70
+ }
63
71
  /** A JSON-compatible value that conveys host-specific meaning without Pygmalion interpreting it. */
64
72
  export type DesignSerializable = string | number | boolean | null | readonly DesignSerializable[] | {
65
73
  readonly [key: string]: DesignSerializable;
@@ -442,9 +450,9 @@ export interface DesignImportController {
442
450
  timeoutMs?: number;
443
451
  minElementCount?: number;
444
452
  }): Promise<DomImportResult | null>;
445
- runScreenInteractions(iframe: HTMLIFrameElement, interactions: readonly DesignScreenInteraction[]): Promise<DesignScreenInteractionReport>;
453
+ runScreenInteractions(iframe: HTMLIFrameElement, interactions: readonly DesignScreenInteraction[], options?: DesignScreenInteractionRunOptions): Promise<DesignScreenInteractionReport>;
446
454
  /** Reproduces and verifies state without waiting for capture-only stability. */
447
- prepareScreenState?(iframe: HTMLIFrameElement, spec: DesignScreenCaptureSpec): Promise<DesignScreenCaptureReport>;
455
+ prepareScreenState?(iframe: HTMLIFrameElement, spec: DesignScreenCaptureSpec, options?: DesignScreenInteractionRunOptions): Promise<DesignScreenCaptureReport>;
448
456
  prepareScreenCapture(iframe: HTMLIFrameElement, spec: DesignScreenCaptureSpec): Promise<DesignScreenCaptureReport>;
449
457
  }
450
458
  /**
@@ -1,3 +1,4 @@
1
+ import { type DesignImportController, type DesignScreenCaptureSpec } from './designImport';
1
2
  import { type PageModel } from './store';
2
3
  /** Diagnostic counters for the headless debug surface. */
3
4
  export declare const __flowSchedulerDebug: {
@@ -62,6 +63,13 @@ export declare function viewportSessionWillDeliver(page: {
62
63
  }): boolean;
63
64
  /** Subscribe to viewport-variant delivery changes. */
64
65
  export declare function subscribeViewportSessions(listener: () => void): () => void;
66
+ type InteractivePreparationController = Pick<DesignImportController, 'prepareScreenCapture' | 'prepareScreenState'>;
67
+ /**
68
+ * Reproduces an editor-controlled state without capture-only quiescence.
69
+ * The runner already waits for a trailing paint and stable geometry before it
70
+ * serializes, so repeating the capture stability pass only delays the panel.
71
+ */
72
+ export declare function prepareInteractiveSessionState(iframe: HTMLIFrameElement, spec: DesignScreenCaptureSpec, controller?: InteractivePreparationController | null): Promise<import("./designImport").DesignScreenCaptureReport>;
65
73
  /**
66
74
  * Materializes one screen in its declared interactive state through the
67
75
  * screen's flow path. The prefix walks as pass-through; the target publishes
@@ -101,3 +109,4 @@ export declare const __viewportCommitDebug: {
101
109
  };
102
110
  /** Viewport-runner delivery states for the headless debug surface. */
103
111
  export declare function __debugViewportSessionStates(): Record<string, unknown>;
112
+ export {};
@@ -1,4 +1,4 @@
1
- import type { DesignScreenInteraction, DesignScreenInteractionReport } from './designImport';
1
+ import type { DesignScreenInteraction, DesignScreenInteractionRunOptions, DesignScreenInteractionReport } from './designImport';
2
2
  export declare function settleScreen(iframe: HTMLIFrameElement, settleMs: number): Promise<void>;
3
3
  export declare function elementVisible(element: Element): boolean;
4
- export declare function runScreenInteractions(iframe: HTMLIFrameElement, interactions: readonly DesignScreenInteraction[]): Promise<DesignScreenInteractionReport>;
4
+ export declare function runScreenInteractions(iframe: HTMLIFrameElement, interactions: readonly DesignScreenInteraction[], options?: DesignScreenInteractionRunOptions): Promise<DesignScreenInteractionReport>;
@@ -91,7 +91,7 @@ export type { ConditionCoverageRoute, ConditionCoverageScreen, ConformanceScreen
91
91
  export { clearPreviewEnvironmentControlValues, getPreviewEnvironmentControlValue, getPreviewEnvironmentControls, getPreviewEnvironmentOverride, setPreviewEnvironmentControlValue, setPreviewEnvironmentControls, subscribePreviewEnvironmentControls, } from './editor/previewEnvironmentControls';
92
92
  export type { PreviewEnvironmentControlDef, PreviewEnvironmentControlOptionDef, } from './editor/previewEnvironmentControls';
93
93
  export { createDesignImportController, createDesignScreenCollection, DESIGN_IMPORT_KINDS, expandDesignScreenCasesViewports, expandDesignScreenCollectionViewports, mergeScreenPresets, } from './editor/designImport';
94
- export type { CreateDesignImportOptions, DesignBehaviorScenario, DesignImportAsset, DesignImportCollection, DesignImportController, DesignImportCoverage, DesignImportCoverageItem, DesignImportInitialPage, DesignImportKind, DesignImportManifest, DesignImportPage, DesignFrameHeightMode, DesignFrameSizeMode, DesignScenarioCoverage, DesignScenarioSource, DesignScreenCase, DesignScreenAssertion, DesignScreenAssertionReport, DesignScreenAssertionVisibility, DesignScreenAttributeAssertion, DesignScreenCaptureFailure, DesignScreenCaptureFailureCode, DesignScreenCaptureFailureStage, DesignScreenCaptureDefaults, DesignScreenCaptureRequirements, DesignScreenCaptureReport, DesignScreenCaptureSpec, DesignScreenCollectionResult, DesignScreenInteraction, DesignScreenInteractionAction, DesignScreenInteractionReport, DesignScreenPreset, DesignScreenPresetContext, DesignScreenPresetExecutionResult, DesignScreenPresetExecutor, DesignScreenPresetRequest, DesignScreenViewport, DesignScreenViewportExpansionOptions, DesignScreenViewportPagePatch, DesignSerializable, StoryboardEnvironment, StoryboardMediaDevice, StoryboardMediaFailure, StoryboardNetwork, StoryboardPermissionState, StoryboardRequestCondition, StoryboardRequestOutcome, } from './editor/designImport';
94
+ export type { CreateDesignImportOptions, DesignBehaviorScenario, DesignImportAsset, DesignImportCollection, DesignImportController, DesignImportCoverage, DesignImportCoverageItem, DesignImportInitialPage, DesignImportKind, DesignImportManifest, DesignImportPage, DesignFrameHeightMode, DesignFrameSizeMode, DesignScenarioCoverage, DesignScenarioSource, DesignScreenCase, DesignScreenAssertion, DesignScreenAssertionReport, DesignScreenAssertionVisibility, DesignScreenAttributeAssertion, DesignScreenCaptureFailure, DesignScreenCaptureFailureCode, DesignScreenCaptureFailureStage, DesignScreenCaptureDefaults, DesignScreenCaptureRequirements, DesignScreenCaptureReport, DesignScreenCaptureSpec, DesignScreenCollectionResult, DesignScreenInteraction, DesignScreenInteractionAction, DesignScreenInteractionRunOptions, DesignScreenInteractionReport, DesignScreenPreset, DesignScreenPresetContext, DesignScreenPresetExecutionResult, DesignScreenPresetExecutor, DesignScreenPresetRequest, DesignScreenViewport, DesignScreenViewportExpansionOptions, DesignScreenViewportPagePatch, DesignSerializable, StoryboardEnvironment, StoryboardMediaDevice, StoryboardMediaFailure, StoryboardNetwork, StoryboardPermissionState, StoryboardRequestCondition, StoryboardRequestOutcome, } from './editor/designImport';
95
95
  export type { DomImportDiagnostic, DomImportMetrics, DomImportOptions, DomImportResult, } from './editor/domImport';
96
96
  export type { SharedSourceEditScope, SharedSourceFrameSummary, SharedSourceImpact, } from './editor/sharedSource';
97
97
  export type { NodeJSON } from './editor/store';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pygmalionjs/pygmalion",
3
- "version": "0.6.17",
3
+ "version": "0.6.18",
4
4
  "description": "Code-backed DOM design sandbox and visual QA editor",
5
5
  "license": "UNLICENSED",
6
6
  "publishConfig": {