@wix/himalaya-cli 0.905.0 → 0.906.0

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.
@@ -329,6 +329,20 @@ export declare function button(props: {
329
329
  id?: string;
330
330
  }): Component;
331
331
  export declare function withModifiers(c: Component, mods: NonNullable<Component["modifiers"]>): Component;
332
+ /**
333
+ * Stamp a stable node id on an already-built component (invariant 27).
334
+ *
335
+ * The builders take `{ id }` as an option, but a screen is usually assembled as
336
+ * `withModifiers(vstack({ … }), { … })`, where reaching the inner call to name the node
337
+ * means restructuring the expression. `withId` names it from the outside instead.
338
+ *
339
+ * Added for #2738: descriptors had been carrying their node identifier in
340
+ * `modifiers.accessibilityLabel` — the only place that survived to the renderer — so a
341
+ * screen reader announced "himi_branded_home.store" and the tests that address these
342
+ * nodes had nothing else to match on. The id belongs here; the accessible name is then
343
+ * free to be the human text.
344
+ */
345
+ export declare function withId(c: Component, id: string): Component;
332
346
  /** RFC 0024 — conditional visibility. Collapse `c` (zero layout) when `path`
333
347
  * resolves truthy. `path` is a `"$item.<field>"` / `"$service:<svc>.<field>"`
334
348
  * sentinel; the worker emits the bool (for "show only when X", emit the inverse
@@ -1,5 +1,11 @@
1
1
  import type { Component } from "../../dev-server/src/builder.js";
2
- /** A shimmer skeleton rectangle of the given height, tagged with an a11y id. */
2
+ /**
3
+ * A shimmer skeleton rectangle of the given height, tagged with a stable NODE id.
4
+ *
5
+ * #2738 — `id` used to be emitted as `accessibilityLabel`, so a screen reader announced
6
+ * "himi_branded_home.hero_skeleton" and read three shimmer boxes aloud during every load.
7
+ * A skeleton is decorative: it carries an id for tests and no accessible name at all.
8
+ */
3
9
  export declare function skRect(height: number, id: string): Component;
4
10
  /** Options for the standard empty-state block. */
5
11
  export interface EmptyBlockOptions {
@@ -8038,6 +8038,9 @@ function button(props, opts) {
8038
8038
  function withModifiers(c, mods) {
8039
8039
  return { ...c, modifiers: { ...c.modifiers, ...mods } };
8040
8040
  }
8041
+ function withId(c, id) {
8042
+ return { ...c, id };
8043
+ }
8041
8044
  function hiddenWhen(c, path) {
8042
8045
  return withModifiers(c, { hiddenPath: path });
8043
8046
  }
@@ -8455,13 +8458,12 @@ function deriveAppMeta(name, m, platforms = {}) {
8455
8458
 
8456
8459
  // ../../core/sdui/src/screen-kit.ts
8457
8460
  function skRect(height, id) {
8458
- return withModifiers(zstack({ alignment: "center", children: [] }), {
8461
+ return withId(withModifiers(zstack({ alignment: "center", children: [] }), {
8459
8462
  height,
8460
8463
  background: { token: "surfaceSecondary" },
8461
8464
  border: { width: 1, color: { token: "border" } },
8462
- cornerRadius: 8,
8463
- accessibilityLabel: id
8464
- });
8465
+ cornerRadius: 8
8466
+ }), id);
8465
8467
  }
8466
8468
  function emptyBlock(service, titlePath, ctaTitle, ctaScreen, iconName, id, opts = {}) {
8467
8469
  const children = [
@@ -8569,6 +8571,7 @@ export {
8569
8571
  vstack,
8570
8572
  webView,
8571
8573
  wheelPicker,
8574
+ withId,
8572
8575
  withModifiers,
8573
8576
  withTheme,
8574
8577
  workerSubtree,