@cqa-lib/cqa-ui 1.1.556 → 1.1.557-epsilon.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.
@@ -118,6 +118,31 @@ export declare class SimulatorComponent implements AfterViewInit, AfterViewCheck
118
118
  clipsDragActive: boolean;
119
119
  get effectivePlatformType(): 'browser' | 'device';
120
120
  get hasDeviceFrame(): boolean;
121
+ /** Render the CSS-built browser frame for every web/browser run that
122
+ * has a known viewport — including mobile-sized viewports (375×667,
123
+ * 412×915, etc.). Phone-mockup PNGs are reserved for actual mobile
124
+ * *device* emulation (`platformType === 'device'`). */
125
+ get useCssBrowserFrame(): boolean;
126
+ /** Size the CSS browser frame **dynamically** from the viewport's aspect
127
+ * ratio. The binding dimension is picked from the viewport's own
128
+ * orientation so the frame fills the pane along its dominant axis and
129
+ * keeps the viewport's exact aspect on the other axis.
130
+ *
131
+ * - Landscape (`w >= h`, e.g. 1024×768, 1920×1080, 3000×2000):
132
+ * `width: 100%` is primary; height is derived via `aspect-ratio`.
133
+ * `max-height: 100%` lets the engine clamp + shrink width when the
134
+ * pane is shorter than the derived height would require.
135
+ * - Portrait (`w < h`, e.g. 375×667, 412×915):
136
+ * `height: 100%` is primary; width follows via `aspect-ratio`.
137
+ * `max-width: 100%` clamps when the pane is narrower.
138
+ *
139
+ * The 40px chrome bar is baked into the ratio so the inner content
140
+ * area below the chrome lands at the viewport's exact `vp.w / vp.h`.
141
+ * Returns `{}` when no viewport data is available — the parent flex
142
+ * container then keeps the default look (no resize). */
143
+ get cssBrowserFrameOuterStyle(): {
144
+ [key: string]: string;
145
+ };
121
146
  get isPlayerSwitching(): boolean;
122
147
  get isAspectRatioMatched(): boolean;
123
148
  get liveContentContainerStyle(): {
@@ -50,7 +50,7 @@ export declare class ModularTableTemplateComponent implements OnInit, OnChanges,
50
50
  modular: string;
51
51
  };
52
52
  viewModeChange: EventEmitter<"list" | "modular">;
53
- get viewModeSegments(): Array<{
53
+ viewModeSegments: Array<{
54
54
  label: string;
55
55
  value: string;
56
56
  icon?: string;
@@ -113,6 +113,8 @@ export interface ModularLabels {
113
113
  unorganizedRowLabel: string;
114
114
  /** Shown in the folder sidebar when the search input filters out every folder. */
115
115
  noFoldersFound: string;
116
+ /** Helper line shown under the empty-folder-list state, hinting at the create action. */
117
+ noFoldersEmptyDescription: string;
116
118
  /** Sidebar folder-row hover tooltip count line. `{n}` is the descendant total
117
119
  * (FolderNode.totalCount). The host swaps the noun for "step group" when in
118
120
  * step-group mode by overriding these two keys. The full tooltip is composed
@@ -47,7 +47,7 @@ export declare class TableTemplateComponent implements OnInit, OnChanges, OnDest
47
47
  modular: string;
48
48
  };
49
49
  viewModeChange: EventEmitter<"list" | "modular">;
50
- get viewModeSegments(): Array<{
50
+ viewModeSegments: Array<{
51
51
  label: string;
52
52
  value: string;
53
53
  icon?: string;
@@ -266,6 +266,15 @@ export declare class TestCaseDetailsEditComponent implements OnInit, OnChanges {
266
266
  private initViewportFromValue;
267
267
  private buildViewportValue;
268
268
  onViewportModeChange(mode: ViewportMode): void;
269
+ /** Toggle `Validators.required` on the resolution / device control that
270
+ * belongs to the active viewport mode, and clear it from the others.
271
+ * Mirrors the organization-setting / test-plan-form pattern; keeps the
272
+ * form only invalid for the field the user can actually see. */
273
+ private applyViewportRequiredValidator;
274
+ /** True when the resolution / device for the active viewport mode is
275
+ * filled. When false, the relevant control is marked touched so the
276
+ * inline error block renders. Used by `onSave()` to gate the emit. */
277
+ private validateViewportSelection;
269
278
  private applyViewportCategoryOptions;
270
279
  addViewportCustomTag(): void;
271
280
  removeViewportCustomTag(index: number): void;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cqa-lib/cqa-ui",
3
- "version": "1.1.556",
3
+ "version": "1.1.557-epsilon.1",
4
4
  "description": "UI Kit library for Angular 13.4",
5
5
  "keywords": [
6
6
  "angular",