@wix/himalaya-cli 0.1540.0 → 0.1541.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.
@@ -3545,6 +3545,25 @@ export interface SearchableConfig {
3545
3545
  onCancel?: Action;
3546
3546
  /** `$service:` bool: the search is busy. */
3547
3547
  loadingPath?: string;
3548
+ /** Static suggestions. On the wire for a later release: no shell draws them yet (RFC 0010 decision 11). */
3549
+ suggestions?: SearchSuggestion[];
3550
+ /** `$service:` array of `{ id, label, icon? }`. Not drawn yet (decision 11). */
3551
+ suggestionsPath?: string;
3552
+ /** `args.id` (+ `args.label`) of the tapped suggestion; a static suggestion's own `onTap` wins. */
3553
+ onSuggestionTap?: Action;
3554
+ /** Scope bar (`TabItem` reused). */
3555
+ scopes?: TabItem[];
3556
+ /** `$service:` selected scope id. */
3557
+ scopePath?: string;
3558
+ /** `args.selectedId`. */
3559
+ onScopeChange?: Action;
3560
+ }
3561
+ /** RFC 0066 §2 — one static search suggestion (`SearchableConfig.suggestions`). */
3562
+ export interface SearchSuggestion {
3563
+ id: string;
3564
+ label: string;
3565
+ icon?: IconRef;
3566
+ onTap?: Action;
3548
3567
  }
3549
3568
  /** `ScreenDescriptor.hostTitle`. Each value is a literal, a `$t:` key, or a `$service:` path. */
3550
3569
  export interface HostTitle {
@@ -449,6 +449,67 @@ export declare const screenDescriptorSchema: {
449
449
  readonly loadingPath: {
450
450
  readonly type: "string";
451
451
  };
452
+ readonly suggestions: {
453
+ readonly type: "array";
454
+ readonly items: {
455
+ readonly $ref: "#/$defs/searchSuggestion";
456
+ };
457
+ };
458
+ readonly suggestionsPath: {
459
+ readonly type: "string";
460
+ };
461
+ readonly onSuggestionTap: {
462
+ readonly $ref: "#/$defs/action";
463
+ };
464
+ readonly scopes: {
465
+ readonly type: "array";
466
+ readonly items: {
467
+ readonly $ref: "#/$defs/searchScope";
468
+ };
469
+ };
470
+ readonly scopePath: {
471
+ readonly type: "string";
472
+ };
473
+ readonly onScopeChange: {
474
+ readonly $ref: "#/$defs/action";
475
+ };
476
+ };
477
+ };
478
+ readonly searchSuggestion: {
479
+ readonly type: "object";
480
+ readonly additionalProperties: false;
481
+ readonly required: readonly ["id", "label"];
482
+ readonly properties: {
483
+ readonly id: {
484
+ readonly type: "string";
485
+ readonly minLength: 1;
486
+ };
487
+ readonly label: {
488
+ readonly type: "string";
489
+ };
490
+ readonly icon: {
491
+ readonly type: "string";
492
+ };
493
+ readonly onTap: {
494
+ readonly $ref: "#/$defs/action";
495
+ };
496
+ };
497
+ };
498
+ readonly searchScope: {
499
+ readonly type: "object";
500
+ readonly additionalProperties: false;
501
+ readonly required: readonly ["id", "label"];
502
+ readonly properties: {
503
+ readonly id: {
504
+ readonly type: "string";
505
+ readonly minLength: 1;
506
+ };
507
+ readonly label: {
508
+ readonly type: "string";
509
+ };
510
+ readonly badge: {
511
+ readonly type: "string";
512
+ };
452
513
  };
453
514
  };
454
515
  readonly toolbarItem: {
@@ -1787,6 +1848,67 @@ export declare const widgetSnapshotSchema: {
1787
1848
  readonly loadingPath: {
1788
1849
  readonly type: "string";
1789
1850
  };
1851
+ readonly suggestions: {
1852
+ readonly type: "array";
1853
+ readonly items: {
1854
+ readonly $ref: "#/$defs/searchSuggestion";
1855
+ };
1856
+ };
1857
+ readonly suggestionsPath: {
1858
+ readonly type: "string";
1859
+ };
1860
+ readonly onSuggestionTap: {
1861
+ readonly $ref: "#/$defs/action";
1862
+ };
1863
+ readonly scopes: {
1864
+ readonly type: "array";
1865
+ readonly items: {
1866
+ readonly $ref: "#/$defs/searchScope";
1867
+ };
1868
+ };
1869
+ readonly scopePath: {
1870
+ readonly type: "string";
1871
+ };
1872
+ readonly onScopeChange: {
1873
+ readonly $ref: "#/$defs/action";
1874
+ };
1875
+ };
1876
+ };
1877
+ readonly searchSuggestion: {
1878
+ readonly type: "object";
1879
+ readonly additionalProperties: false;
1880
+ readonly required: readonly ["id", "label"];
1881
+ readonly properties: {
1882
+ readonly id: {
1883
+ readonly type: "string";
1884
+ readonly minLength: 1;
1885
+ };
1886
+ readonly label: {
1887
+ readonly type: "string";
1888
+ };
1889
+ readonly icon: {
1890
+ readonly type: "string";
1891
+ };
1892
+ readonly onTap: {
1893
+ readonly $ref: "#/$defs/action";
1894
+ };
1895
+ };
1896
+ };
1897
+ readonly searchScope: {
1898
+ readonly type: "object";
1899
+ readonly additionalProperties: false;
1900
+ readonly required: readonly ["id", "label"];
1901
+ readonly properties: {
1902
+ readonly id: {
1903
+ readonly type: "string";
1904
+ readonly minLength: 1;
1905
+ };
1906
+ readonly label: {
1907
+ readonly type: "string";
1908
+ };
1909
+ readonly badge: {
1910
+ readonly type: "string";
1911
+ };
1790
1912
  };
1791
1913
  };
1792
1914
  readonly toolbarItem: {
@@ -8659,7 +8659,7 @@ var screenDescriptorSchema = {
8659
8659
  visibilityPath: { type: "string" }
8660
8660
  }
8661
8661
  },
8662
- // RFC 0010 "Native top-bar search" (SearchableConfig fields 1–5, 12–15). `placement` stays a free string.
8662
+ // RFC 0010 "Native top-bar search" (SearchableConfig fields 1–15). `placement` stays a free string.
8663
8663
  searchableConfig: {
8664
8664
  type: "object",
8665
8665
  additionalProperties: false,
@@ -8672,7 +8672,35 @@ var screenDescriptorSchema = {
8672
8672
  placement: { type: "string" },
8673
8673
  focusPath: { type: "string" },
8674
8674
  onCancel: { $ref: "#/$defs/action" },
8675
- loadingPath: { type: "string" }
8675
+ loadingPath: { type: "string" },
8676
+ suggestions: { type: "array", items: { $ref: "#/$defs/searchSuggestion" } },
8677
+ suggestionsPath: { type: "string" },
8678
+ onSuggestionTap: { $ref: "#/$defs/action" },
8679
+ scopes: { type: "array", items: { $ref: "#/$defs/searchScope" } },
8680
+ scopePath: { type: "string" },
8681
+ onScopeChange: { $ref: "#/$defs/action" }
8682
+ }
8683
+ },
8684
+ searchSuggestion: {
8685
+ type: "object",
8686
+ additionalProperties: false,
8687
+ required: ["id", "label"],
8688
+ properties: {
8689
+ id: { type: "string", minLength: 1 },
8690
+ label: { type: "string" },
8691
+ icon: { type: "string" },
8692
+ onTap: { $ref: "#/$defs/action" }
8693
+ }
8694
+ },
8695
+ // A scope is a `TabItem`.
8696
+ searchScope: {
8697
+ type: "object",
8698
+ additionalProperties: false,
8699
+ required: ["id", "label"],
8700
+ properties: {
8701
+ id: { type: "string", minLength: 1 },
8702
+ label: { type: "string" },
8703
+ badge: { type: "string" }
8676
8704
  }
8677
8705
  },
8678
8706
  toolbarItem: {
@@ -7231,7 +7231,7 @@ var screenDescriptorSchema = {
7231
7231
  visibilityPath: { type: "string" }
7232
7232
  }
7233
7233
  },
7234
- // RFC 0010 "Native top-bar search" (SearchableConfig fields 1–5, 12–15). `placement` stays a free string.
7234
+ // RFC 0010 "Native top-bar search" (SearchableConfig fields 1–15). `placement` stays a free string.
7235
7235
  searchableConfig: {
7236
7236
  type: "object",
7237
7237
  additionalProperties: false,
@@ -7244,7 +7244,35 @@ var screenDescriptorSchema = {
7244
7244
  placement: { type: "string" },
7245
7245
  focusPath: { type: "string" },
7246
7246
  onCancel: { $ref: "#/$defs/action" },
7247
- loadingPath: { type: "string" }
7247
+ loadingPath: { type: "string" },
7248
+ suggestions: { type: "array", items: { $ref: "#/$defs/searchSuggestion" } },
7249
+ suggestionsPath: { type: "string" },
7250
+ onSuggestionTap: { $ref: "#/$defs/action" },
7251
+ scopes: { type: "array", items: { $ref: "#/$defs/searchScope" } },
7252
+ scopePath: { type: "string" },
7253
+ onScopeChange: { $ref: "#/$defs/action" }
7254
+ }
7255
+ },
7256
+ searchSuggestion: {
7257
+ type: "object",
7258
+ additionalProperties: false,
7259
+ required: ["id", "label"],
7260
+ properties: {
7261
+ id: { type: "string", minLength: 1 },
7262
+ label: { type: "string" },
7263
+ icon: { type: "string" },
7264
+ onTap: { $ref: "#/$defs/action" }
7265
+ }
7266
+ },
7267
+ // A scope is a `TabItem`.
7268
+ searchScope: {
7269
+ type: "object",
7270
+ additionalProperties: false,
7271
+ required: ["id", "label"],
7272
+ properties: {
7273
+ id: { type: "string", minLength: 1 },
7274
+ label: { type: "string" },
7275
+ badge: { type: "string" }
7248
7276
  }
7249
7277
  },
7250
7278
  toolbarItem: {