@wix/himalaya-cli 0.1210.0 → 0.1212.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.
Files changed (118) hide show
  1. package/dist/cli.mjs +91 -1
  2. package/package.json +2 -2
  3. package/templates/beauty-salon/tier5-src/_shared/engine-intl.ts +57 -16
  4. package/templates/beauty-salon-owner/dev/index.ts +280 -37
  5. package/templates/beauty-salon-owner/tier5-src/_shared/aria-chat.ts +31 -16
  6. package/templates/beauty-salon-owner/tier5-src/_shared/engine-intl.ts +57 -16
  7. package/templates/beauty-salon-owner/tier5-src/_shared/owner-module-data.ts +105 -37
  8. package/templates/beauty-salon-owner/tier5-src/himi-owner-lite-aria-history/index.ts +1 -0
  9. package/templates/beauty-salon-owner/tier5-src/himi-owner-lite-home/index.ts +5 -0
  10. package/templates/beauty-salon-owner/tier5-src/himi-owner-lite-manage/index.ts +4 -2
  11. package/templates/beauty-salon-owner/tier5-src/himi-owner-lite-post/index.ts +63 -16
  12. package/templates/beauty-salon-owner/tier5-src/himi-owner-lite-product/index.ts +61 -16
  13. package/templates/branded-lite/tier5-src/_shared/engine-intl.ts +57 -16
  14. package/templates/community-club/tier5-src/_shared/engine-intl.ts +57 -16
  15. package/templates/community-club-owner/dev/index.ts +389 -37
  16. package/templates/community-club-owner/tier5-src/_shared/aria-chat.ts +31 -16
  17. package/templates/community-club-owner/tier5-src/_shared/engine-intl.ts +57 -16
  18. package/templates/community-club-owner/tier5-src/_shared/owner-module-data.ts +105 -37
  19. package/templates/community-club-owner/tier5-src/himi-owner-lite-aria-history/index.ts +1 -0
  20. package/templates/community-club-owner/tier5-src/himi-owner-lite-event/index.ts +59 -14
  21. package/templates/community-club-owner/tier5-src/himi-owner-lite-home/index.ts +5 -0
  22. package/templates/community-club-owner/tier5-src/himi-owner-lite-manage/index.ts +4 -2
  23. package/templates/community-club-owner/tier5-src/himi-owner-lite-post/index.ts +63 -16
  24. package/templates/community-club-owner/tier5-src/himi-owner-lite-product/index.ts +61 -16
  25. package/templates/events-meetups/tier5-src/_shared/engine-intl.ts +57 -16
  26. package/templates/events-meetups-owner/dev/index.ts +280 -37
  27. package/templates/events-meetups-owner/tier5-src/_shared/aria-chat.ts +31 -16
  28. package/templates/events-meetups-owner/tier5-src/_shared/engine-intl.ts +57 -16
  29. package/templates/events-meetups-owner/tier5-src/_shared/owner-module-data.ts +105 -37
  30. package/templates/events-meetups-owner/tier5-src/himi-owner-lite-aria-history/index.ts +1 -0
  31. package/templates/events-meetups-owner/tier5-src/himi-owner-lite-event/index.ts +59 -14
  32. package/templates/events-meetups-owner/tier5-src/himi-owner-lite-home/index.ts +5 -0
  33. package/templates/events-meetups-owner/tier5-src/himi-owner-lite-manage/index.ts +4 -2
  34. package/templates/events-meetups-owner/tier5-src/himi-owner-lite-post/index.ts +63 -16
  35. package/templates/gym-fitness/tier5-src/_shared/engine-intl.ts +57 -16
  36. package/templates/gym-fitness-owner/dev/index.ts +389 -37
  37. package/templates/gym-fitness-owner/tier5-src/_shared/aria-chat.ts +31 -16
  38. package/templates/gym-fitness-owner/tier5-src/_shared/engine-intl.ts +57 -16
  39. package/templates/gym-fitness-owner/tier5-src/_shared/owner-module-data.ts +105 -37
  40. package/templates/gym-fitness-owner/tier5-src/himi-owner-lite-aria-history/index.ts +1 -0
  41. package/templates/gym-fitness-owner/tier5-src/himi-owner-lite-event/index.ts +59 -14
  42. package/templates/gym-fitness-owner/tier5-src/himi-owner-lite-home/index.ts +5 -0
  43. package/templates/gym-fitness-owner/tier5-src/himi-owner-lite-manage/index.ts +4 -2
  44. package/templates/gym-fitness-owner/tier5-src/himi-owner-lite-post/index.ts +63 -16
  45. package/templates/gym-fitness-owner/tier5-src/himi-owner-lite-product/index.ts +61 -16
  46. package/templates/nonprofit-cause/tier5-src/_shared/engine-intl.ts +57 -16
  47. package/templates/nonprofit-cause-owner/dev/index.ts +280 -37
  48. package/templates/nonprofit-cause-owner/tier5-src/_shared/aria-chat.ts +31 -16
  49. package/templates/nonprofit-cause-owner/tier5-src/_shared/engine-intl.ts +57 -16
  50. package/templates/nonprofit-cause-owner/tier5-src/_shared/owner-module-data.ts +105 -37
  51. package/templates/nonprofit-cause-owner/tier5-src/himi-owner-lite-aria-history/index.ts +1 -0
  52. package/templates/nonprofit-cause-owner/tier5-src/himi-owner-lite-event/index.ts +59 -14
  53. package/templates/nonprofit-cause-owner/tier5-src/himi-owner-lite-home/index.ts +5 -0
  54. package/templates/nonprofit-cause-owner/tier5-src/himi-owner-lite-manage/index.ts +4 -2
  55. package/templates/nonprofit-cause-owner/tier5-src/himi-owner-lite-post/index.ts +63 -16
  56. package/templates/owner-lite/dev/index.ts +389 -37
  57. package/templates/owner-lite/tier5-src/_shared/aria-chat.ts +31 -16
  58. package/templates/owner-lite/tier5-src/_shared/engine-intl.ts +57 -16
  59. package/templates/owner-lite/tier5-src/_shared/owner-module-data.ts +105 -37
  60. package/templates/owner-lite/tier5-src/himi-owner-lite-aria-history/index.ts +1 -0
  61. package/templates/owner-lite/tier5-src/himi-owner-lite-event/index.ts +59 -14
  62. package/templates/owner-lite/tier5-src/himi-owner-lite-faq/index.ts +8 -2
  63. package/templates/owner-lite/tier5-src/himi-owner-lite-home/index.ts +5 -0
  64. package/templates/owner-lite/tier5-src/himi-owner-lite-manage/index.ts +4 -2
  65. package/templates/owner-lite/tier5-src/himi-owner-lite-post/index.ts +63 -16
  66. package/templates/owner-lite/tier5-src/himi-owner-lite-product/index.ts +61 -16
  67. package/templates/podcast-creator/tier5-src/_shared/engine-intl.ts +57 -16
  68. package/templates/podcast-creator-owner/dev/index.ts +389 -37
  69. package/templates/podcast-creator-owner/tier5-src/_shared/aria-chat.ts +31 -16
  70. package/templates/podcast-creator-owner/tier5-src/_shared/engine-intl.ts +57 -16
  71. package/templates/podcast-creator-owner/tier5-src/_shared/owner-module-data.ts +105 -37
  72. package/templates/podcast-creator-owner/tier5-src/himi-owner-lite-aria-history/index.ts +1 -0
  73. package/templates/podcast-creator-owner/tier5-src/himi-owner-lite-event/index.ts +59 -14
  74. package/templates/podcast-creator-owner/tier5-src/himi-owner-lite-home/index.ts +5 -0
  75. package/templates/podcast-creator-owner/tier5-src/himi-owner-lite-manage/index.ts +4 -2
  76. package/templates/podcast-creator-owner/tier5-src/himi-owner-lite-post/index.ts +63 -16
  77. package/templates/podcast-creator-owner/tier5-src/himi-owner-lite-product/index.ts +61 -16
  78. package/templates/portfolio-creative/tier5-src/_shared/engine-intl.ts +57 -16
  79. package/templates/portfolio-creative-owner/dev/index.ts +280 -37
  80. package/templates/portfolio-creative-owner/tier5-src/_shared/aria-chat.ts +31 -16
  81. package/templates/portfolio-creative-owner/tier5-src/_shared/engine-intl.ts +57 -16
  82. package/templates/portfolio-creative-owner/tier5-src/_shared/owner-module-data.ts +105 -37
  83. package/templates/portfolio-creative-owner/tier5-src/himi-owner-lite-aria-history/index.ts +1 -0
  84. package/templates/portfolio-creative-owner/tier5-src/himi-owner-lite-home/index.ts +5 -0
  85. package/templates/portfolio-creative-owner/tier5-src/himi-owner-lite-manage/index.ts +4 -2
  86. package/templates/portfolio-creative-owner/tier5-src/himi-owner-lite-post/index.ts +63 -16
  87. package/templates/portfolio-creative-owner/tier5-src/himi-owner-lite-product/index.ts +61 -16
  88. package/templates/restaurant/tier5-src/_shared/engine-intl.ts +57 -16
  89. package/templates/restaurant-owner/dev/index.ts +389 -37
  90. package/templates/restaurant-owner/tier5-src/_shared/aria-chat.ts +31 -16
  91. package/templates/restaurant-owner/tier5-src/_shared/engine-intl.ts +57 -16
  92. package/templates/restaurant-owner/tier5-src/_shared/owner-module-data.ts +105 -37
  93. package/templates/restaurant-owner/tier5-src/himi-owner-lite-aria-history/index.ts +1 -0
  94. package/templates/restaurant-owner/tier5-src/himi-owner-lite-event/index.ts +59 -14
  95. package/templates/restaurant-owner/tier5-src/himi-owner-lite-home/index.ts +5 -0
  96. package/templates/restaurant-owner/tier5-src/himi-owner-lite-manage/index.ts +4 -2
  97. package/templates/restaurant-owner/tier5-src/himi-owner-lite-post/index.ts +63 -16
  98. package/templates/restaurant-owner/tier5-src/himi-owner-lite-product/index.ts +61 -16
  99. package/templates/retail-store/tier5-src/_shared/engine-intl.ts +57 -16
  100. package/templates/retail-store-owner/dev/index.ts +280 -37
  101. package/templates/retail-store-owner/tier5-src/_shared/aria-chat.ts +31 -16
  102. package/templates/retail-store-owner/tier5-src/_shared/engine-intl.ts +57 -16
  103. package/templates/retail-store-owner/tier5-src/_shared/owner-module-data.ts +105 -37
  104. package/templates/retail-store-owner/tier5-src/himi-owner-lite-aria-history/index.ts +1 -0
  105. package/templates/retail-store-owner/tier5-src/himi-owner-lite-home/index.ts +5 -0
  106. package/templates/retail-store-owner/tier5-src/himi-owner-lite-manage/index.ts +4 -2
  107. package/templates/retail-store-owner/tier5-src/himi-owner-lite-post/index.ts +63 -16
  108. package/templates/retail-store-owner/tier5-src/himi-owner-lite-product/index.ts +61 -16
  109. package/templates/yoga-studio/tier5-src/_shared/engine-intl.ts +57 -16
  110. package/templates/yoga-studio-owner/dev/index.ts +280 -37
  111. package/templates/yoga-studio-owner/tier5-src/_shared/aria-chat.ts +31 -16
  112. package/templates/yoga-studio-owner/tier5-src/_shared/engine-intl.ts +57 -16
  113. package/templates/yoga-studio-owner/tier5-src/_shared/owner-module-data.ts +105 -37
  114. package/templates/yoga-studio-owner/tier5-src/himi-owner-lite-aria-history/index.ts +1 -0
  115. package/templates/yoga-studio-owner/tier5-src/himi-owner-lite-event/index.ts +59 -14
  116. package/templates/yoga-studio-owner/tier5-src/himi-owner-lite-home/index.ts +5 -0
  117. package/templates/yoga-studio-owner/tier5-src/himi-owner-lite-manage/index.ts +4 -2
  118. package/templates/yoga-studio-owner/tier5-src/himi-owner-lite-post/index.ts +63 -16
@@ -48,6 +48,36 @@ const MONTHS_LONG = [
48
48
  "July", "August", "September", "October", "November", "December",
49
49
  ] as const;
50
50
 
51
+ /**
52
+ * A DateTimeFormat for `timeZone` when one is given and this engine knows it. An unknown or
53
+ * malformed IANA id is a RangeError in ECMA-402; these helpers never throw, so it degrades to
54
+ * the device zone rather than killing the screen. Without Intl there is no zone database at all,
55
+ * and the fallbacks below render in the device zone for the same reason.
56
+ *
57
+ * Formatters are memoised per (locale, zone, options): a management page formats several dates
58
+ * per row, and building a DateTimeFormat (or throwing on a bad zone) each time is not free on
59
+ * JSC or QuickJS. Only call it where `hasIntl()` holds — every caller does.
60
+ */
61
+ const FORMATTERS = new Map<string, Intl.DateTimeFormat>();
62
+ function dateFormat(locale: string, options: Intl.DateTimeFormatOptions, timeZone?: string): Intl.DateTimeFormat {
63
+ const key = `${locale}|${timeZone ?? ""}|${JSON.stringify(options)}`;
64
+ let formatter = FORMATTERS.get(key);
65
+ if (!formatter) {
66
+ if (hasIntl()) {
67
+ if (timeZone) {
68
+ try {
69
+ formatter = new Intl.DateTimeFormat(locale, { ...options, timeZone });
70
+ } catch {
71
+ /* unknown zone: device zone below, remembered under this key */
72
+ }
73
+ }
74
+ formatter ??= new Intl.DateTimeFormat(locale, options);
75
+ FORMATTERS.set(key, formatter);
76
+ }
77
+ }
78
+ return formatter as Intl.DateTimeFormat;
79
+ }
80
+
51
81
  // The four shapes below are not invented — they are the option bags this corpus actually uses,
52
82
  // counted across every bundle: "Jan 5, 2026" (33 sites), "Jan 5" (11), "Mon, Jan 5, 3:07 PM" (8)
53
83
  // and "Jan 5, 3:07 PM" (4). Naming them means a conversion is a one-line swap rather than a
@@ -55,46 +85,46 @@ const MONTHS_LONG = [
55
85
  // ECMA-402 in engine-intl-fallback.test.ts.
56
86
 
57
87
  /** `{ month: "short", day: "numeric", year: "numeric" }` — "Jan 5, 2026". */
58
- export function formatDateMedium(date: Date, locale = "en-US"): string {
88
+ export function formatDateMedium(date: Date, locale = "en-US", timeZone?: string): string {
59
89
  if (hasIntl()) {
60
- return new Intl.DateTimeFormat(locale, { month: "short", day: "numeric", year: "numeric" }).format(date);
90
+ return dateFormat(locale, { month: "short", day: "numeric", year: "numeric" }, timeZone).format(date);
61
91
  }
62
92
  return `${MONTHS_SHORT[date.getMonth()]} ${date.getDate()}, ${date.getFullYear()}`;
63
93
  }
64
94
 
65
95
  /** `{ month: "short", day: "numeric" }` — "Jan 5". */
66
- export function formatMonthDay(date: Date, locale = "en-US"): string {
96
+ export function formatMonthDay(date: Date, locale = "en-US", timeZone?: string): string {
67
97
  if (hasIntl()) {
68
- return new Intl.DateTimeFormat(locale, { month: "short", day: "numeric" }).format(date);
98
+ return dateFormat(locale, { month: "short", day: "numeric" }, timeZone).format(date);
69
99
  }
70
100
  return `${MONTHS_SHORT[date.getMonth()]} ${date.getDate()}`;
71
101
  }
72
102
 
73
103
  /** `{ month: "long", day: "numeric" }` — "January 5". */
74
- export function formatMonthDayLong(date: Date, locale = "en-US"): string {
104
+ export function formatMonthDayLong(date: Date, locale = "en-US", timeZone?: string): string {
75
105
  if (hasIntl()) {
76
- return new Intl.DateTimeFormat(locale, { month: "long", day: "numeric" }).format(date);
106
+ return dateFormat(locale, { month: "long", day: "numeric" }, timeZone).format(date);
77
107
  }
78
108
  return `${MONTHS_LONG[date.getMonth()]} ${date.getDate()}`;
79
109
  }
80
110
 
81
111
  /** `{ weekday: "short", month: "short", day: "numeric", hour: "numeric", minute: "2-digit" }`
82
112
  * — "Mon, Jan 5, 3:07 PM". */
83
- export function formatWeekdayDateTime(date: Date, locale = "en-US"): string {
113
+ export function formatWeekdayDateTime(date: Date, locale = "en-US", timeZone?: string): string {
84
114
  if (hasIntl()) {
85
- return new Intl.DateTimeFormat(locale, {
115
+ return dateFormat(locale, {
86
116
  weekday: "short", month: "short", day: "numeric", hour: "numeric", minute: "2-digit",
87
- }).format(date);
117
+ }, timeZone).format(date);
88
118
  }
89
119
  return `${WEEKDAYS_SHORT[date.getDay()]}, ${MONTHS_SHORT[date.getMonth()]} ${date.getDate()}, ${clock12(date)}`;
90
120
  }
91
121
 
92
122
  /** `{ month: "short", day: "numeric", hour: "numeric", minute: "2-digit" }` — "Jan 5, 3:07 PM". */
93
- export function formatMonthDayTime(date: Date, locale = "en-US"): string {
123
+ export function formatMonthDayTime(date: Date, locale = "en-US", timeZone?: string): string {
94
124
  if (hasIntl()) {
95
- return new Intl.DateTimeFormat(locale, {
125
+ return dateFormat(locale, {
96
126
  month: "short", day: "numeric", hour: "numeric", minute: "2-digit",
97
- }).format(date);
127
+ }, timeZone).format(date);
98
128
  }
99
129
  return `${MONTHS_SHORT[date.getMonth()]} ${date.getDate()}, ${clock12(date)}`;
100
130
  }
@@ -380,9 +410,9 @@ export function normalizeFormattedPrice(formatted: string): string {
380
410
  return `${m[1]}${m[3]}${m[2]}`;
381
411
  }
382
412
 
383
- function clockParts(d: Date, locale: string): { time: string; meridiem: string } {
413
+ function clockParts(d: Date, locale: string, timeZone?: string): { time: string; meridiem: string } {
384
414
  const full = hasIntl()
385
- ? new Intl.DateTimeFormat(locale, { hour: "numeric", minute: "2-digit", hour12: true }).format(d)
415
+ ? dateFormat(locale, { hour: "numeric", minute: "2-digit", hour12: true }, timeZone).format(d)
386
416
  : clock12(d);
387
417
  // ICU puts a narrow no-break space before the meridiem; normalize so callers can split on it.
388
418
  const clean = full.replace(/[  ]/g, " ");
@@ -391,8 +421,8 @@ function clockParts(d: Date, locale: string): { time: string; meridiem: string }
391
421
  }
392
422
 
393
423
  /** "8:00 PM" — the one clock every customer screen uses (12-hour, en-US shape). */
394
- export function formatClock(date: Date, locale = "en-US"): string {
395
- const { time, meridiem } = clockParts(date, locale);
424
+ export function formatClock(date: Date, locale = "en-US", timeZone?: string): string {
425
+ const { time, meridiem } = clockParts(date, locale, timeZone);
396
426
  return meridiem ? `${time} ${meridiem}` : time;
397
427
  }
398
428
 
@@ -403,3 +433,14 @@ export function isPastDate(iso: string | undefined | null, now: number = Date.no
403
433
  const t = Date.parse(iso);
404
434
  return !Number.isNaN(t) && t < now;
405
435
  }
436
+
437
+ /** The calendar day `date` falls on in `timeZone` (device zone when absent, unknown, or when
438
+ * the engine has no Intl), as `YYYY-MM-DD`. For "is this today / this year" comparisons. */
439
+ export function calendarDay(date: Date, timeZone?: string): string {
440
+ if (hasIntl()) {
441
+ const parts = dateFormat("en-CA", { year: "numeric", month: "2-digit", day: "2-digit" }, timeZone).formatToParts(date);
442
+ const get = (type: string) => parts.find((p) => p.type === type)?.value ?? "";
443
+ return `${get("year")}-${get("month")}-${get("day")}`;
444
+ }
445
+ return `${date.getFullYear()}-${pad2(date.getMonth() + 1)}-${pad2(date.getDate())}`;
446
+ }
@@ -48953,7 +48953,7 @@ const SCREENS = runtimeSetting({
48953
48953
  }
48954
48954
  },
48955
48955
  "modifiers": {
48956
- "hiddenPath": "$service:himiOwnerLiteHome.hideContent"
48956
+ "hiddenPath": "$service:himiOwnerLiteHome.hideSourceFailures"
48957
48957
  }
48958
48958
  },
48959
48959
  {
@@ -51040,7 +51040,8 @@ const SCREENS = runtimeSetting({
51040
51040
  "props": {
51041
51041
  "text": "$service:himiOwnerLiteManage.summary",
51042
51042
  "style": "caption",
51043
- "color": "textSecondary"
51043
+ "color": "textSecondary",
51044
+ "collapseWhenEmpty": true
51044
51045
  }
51045
51046
  }
51046
51047
  },
@@ -51635,6 +51636,9 @@ const SCREENS = runtimeSetting({
51635
51636
  }
51636
51637
  ]
51637
51638
  }
51639
+ },
51640
+ "modifiers": {
51641
+ "hiddenPath": "$service:himiOwnerLiteManage.noSections"
51638
51642
  }
51639
51643
  },
51640
51644
  {
@@ -56474,7 +56478,7 @@ const SCREENS = runtimeSetting({
56474
56478
  "package": "himalaya",
56475
56479
  "type": "HStack",
56476
56480
  "props": {
56477
- "spacing": 16,
56481
+ "spacing": 0,
56478
56482
  "children": [
56479
56483
  {
56480
56484
  "id": "",
@@ -56485,43 +56489,57 @@ const SCREENS = runtimeSetting({
56485
56489
  }
56486
56490
  },
56487
56491
  {
56488
- "id": "himi_owner_lite_aria.history",
56489
- "body": {
56490
- "package": "himalaya",
56491
- "type": "Text",
56492
- "props": {
56493
- "text": "History",
56494
- "style": "bodyEmphasis",
56495
- "color": "accentPrimary",
56496
- "maxLines": 1
56497
- }
56498
- },
56499
- "modifiers": {
56500
- "onTap": {
56501
- "actionId": "himi.open",
56502
- "params": {
56503
- "screenId": "himi_owner_lite_aria_history"
56504
- }
56505
- }
56506
- }
56507
- },
56508
- {
56509
- "id": "himi_owner_lite_aria.newchat",
56492
+ "id": "",
56510
56493
  "body": {
56511
56494
  "package": "himalaya",
56512
- "type": "Icon",
56495
+ "type": "HStack",
56513
56496
  "props": {
56514
- "name": "edit",
56515
- "size": 22,
56516
- "tint": "accentPrimary"
56497
+ "spacing": 16,
56498
+ "children": [
56499
+ {
56500
+ "id": "himi_owner_lite_aria.history",
56501
+ "body": {
56502
+ "package": "himalaya",
56503
+ "type": "Text",
56504
+ "props": {
56505
+ "text": "History",
56506
+ "style": "bodyEmphasis",
56507
+ "color": "accentPrimary",
56508
+ "maxLines": 1
56509
+ }
56510
+ },
56511
+ "modifiers": {
56512
+ "onTap": {
56513
+ "actionId": "himi.open",
56514
+ "params": {
56515
+ "screenId": "himi_owner_lite_aria_history"
56516
+ }
56517
+ }
56518
+ }
56519
+ },
56520
+ {
56521
+ "id": "himi_owner_lite_aria.newchat",
56522
+ "body": {
56523
+ "package": "himalaya",
56524
+ "type": "Icon",
56525
+ "props": {
56526
+ "name": "edit",
56527
+ "size": 22,
56528
+ "tint": "accentPrimary"
56529
+ }
56530
+ },
56531
+ "modifiers": {
56532
+ "onTap": {
56533
+ "actionId": "tier5.himiOwnerLiteAria.newChat"
56534
+ },
56535
+ "accessibilityLabel": "New chat",
56536
+ "accessibilityRole": "button",
56537
+ "width": 44,
56538
+ "height": 44
56539
+ }
56540
+ }
56541
+ ]
56517
56542
  }
56518
- },
56519
- "modifiers": {
56520
- "onTap": {
56521
- "actionId": "tier5.himiOwnerLiteAria.newChat"
56522
- },
56523
- "accessibilityLabel": "New chat",
56524
- "accessibilityRole": "button"
56525
56543
  }
56526
56544
  }
56527
56545
  ]
@@ -56882,6 +56900,9 @@ const SCREENS = runtimeSetting({
56882
56900
  }
56883
56901
  ]
56884
56902
  }
56903
+ },
56904
+ "modifiers": {
56905
+ "hiddenPath": "$service:himiOwnerLiteAria.messagesHidden"
56885
56906
  }
56886
56907
  },
56887
56908
  {
@@ -57180,7 +57201,8 @@ const SCREENS = runtimeSetting({
57180
57201
  "text": "$service:himiOwnerLiteAria.error",
57181
57202
  "style": "footnote",
57182
57203
  "color": "danger",
57183
- "maxLines": 3
57204
+ "maxLines": 3,
57205
+ "collapseWhenEmpty": true
57184
57206
  }
57185
57207
  },
57186
57208
  "modifiers": {
@@ -61417,6 +61439,9 @@ const SCREENS = runtimeSetting({
61417
61439
  }
61418
61440
  ]
61419
61441
  }
61442
+ },
61443
+ "modifiers": {
61444
+ "hiddenPath": "$service:himiOwnerLiteAriaHistory.itemsHidden"
61420
61445
  }
61421
61446
  }
61422
61447
  ]
@@ -80417,6 +80442,115 @@ const TEMPLATED: { pattern: string; display: string; liveSeed?: LiveSeed; static
80417
80442
  }
80418
80443
  }
80419
80444
  },
80445
+ {
80446
+ "id": "product_delete_confirmation",
80447
+ "body": {
80448
+ "package": "himalaya",
80449
+ "type": "VStack",
80450
+ "props": {
80451
+ "spacing": 10,
80452
+ "alignment": "leading",
80453
+ "children": [
80454
+ {
80455
+ "id": "product_delete_confirmation.title",
80456
+ "body": {
80457
+ "package": "himalaya",
80458
+ "type": "Text",
80459
+ "props": {
80460
+ "text": "Delete this pro shop item?",
80461
+ "style": "bodyEmphasis"
80462
+ }
80463
+ }
80464
+ },
80465
+ {
80466
+ "id": "product_delete_confirmation.record",
80467
+ "body": {
80468
+ "package": "himalaya",
80469
+ "type": "Text",
80470
+ "props": {
80471
+ "text": "$service:himiOwnerLiteProduct.title",
80472
+ "style": "body",
80473
+ "color": "textSecondary",
80474
+ "maxLines": 2
80475
+ }
80476
+ }
80477
+ },
80478
+ {
80479
+ "id": "",
80480
+ "body": {
80481
+ "package": "himalaya",
80482
+ "type": "Text",
80483
+ "props": {
80484
+ "text": "This cannot be undone.",
80485
+ "style": "footnote",
80486
+ "color": "textSecondary"
80487
+ }
80488
+ }
80489
+ },
80490
+ {
80491
+ "id": "",
80492
+ "body": {
80493
+ "package": "himalaya",
80494
+ "type": "HStack",
80495
+ "props": {
80496
+ "spacing": 8,
80497
+ "children": [
80498
+ {
80499
+ "id": "product_delete_cancel",
80500
+ "body": {
80501
+ "package": "himalaya",
80502
+ "type": "Button",
80503
+ "props": {
80504
+ "title": "Cancel",
80505
+ "style": "secondary",
80506
+ "action": {
80507
+ "actionId": "tier5.himiOwnerLiteProduct.cancelDelete"
80508
+ }
80509
+ }
80510
+ }
80511
+ },
80512
+ {
80513
+ "id": "product_delete_confirm",
80514
+ "body": {
80515
+ "package": "himalaya",
80516
+ "type": "Button",
80517
+ "props": {
80518
+ "title": "Delete",
80519
+ "style": "destructive",
80520
+ "action": {
80521
+ "actionId": "tier5.himiOwnerLiteProduct.confirmDelete"
80522
+ }
80523
+ }
80524
+ }
80525
+ }
80526
+ ]
80527
+ }
80528
+ }
80529
+ }
80530
+ ]
80531
+ }
80532
+ },
80533
+ "modifiers": {
80534
+ "background": {
80535
+ "token": "surfaceElevated"
80536
+ },
80537
+ "border": {
80538
+ "width": 1,
80539
+ "color": {
80540
+ "token": "danger"
80541
+ }
80542
+ },
80543
+ "cornerRadius": 12,
80544
+ "padding": {
80545
+ "leading": 14,
80546
+ "trailing": 14,
80547
+ "top": 14,
80548
+ "bottom": 14
80549
+ },
80550
+ "fillMaxWidth": true,
80551
+ "hiddenPath": "$service:himiOwnerLiteProduct.noDeleteConfirmation"
80552
+ }
80553
+ },
80420
80554
  {
80421
80555
  "id": "",
80422
80556
  "body": {
@@ -82008,6 +82142,115 @@ const TEMPLATED: { pattern: string; display: string; liveSeed?: LiveSeed; static
82008
82142
  }
82009
82143
  }
82010
82144
  },
82145
+ {
82146
+ "id": "event_delete_confirmation",
82147
+ "body": {
82148
+ "package": "himalaya",
82149
+ "type": "VStack",
82150
+ "props": {
82151
+ "spacing": 10,
82152
+ "alignment": "leading",
82153
+ "children": [
82154
+ {
82155
+ "id": "event_delete_confirmation.title",
82156
+ "body": {
82157
+ "package": "himalaya",
82158
+ "type": "Text",
82159
+ "props": {
82160
+ "text": "Delete this challenge?",
82161
+ "style": "bodyEmphasis"
82162
+ }
82163
+ }
82164
+ },
82165
+ {
82166
+ "id": "event_delete_confirmation.record",
82167
+ "body": {
82168
+ "package": "himalaya",
82169
+ "type": "Text",
82170
+ "props": {
82171
+ "text": "$service:himiOwnerLiteEvent.title",
82172
+ "style": "body",
82173
+ "color": "textSecondary",
82174
+ "maxLines": 2
82175
+ }
82176
+ }
82177
+ },
82178
+ {
82179
+ "id": "",
82180
+ "body": {
82181
+ "package": "himalaya",
82182
+ "type": "Text",
82183
+ "props": {
82184
+ "text": "This cannot be undone.",
82185
+ "style": "footnote",
82186
+ "color": "textSecondary"
82187
+ }
82188
+ }
82189
+ },
82190
+ {
82191
+ "id": "",
82192
+ "body": {
82193
+ "package": "himalaya",
82194
+ "type": "HStack",
82195
+ "props": {
82196
+ "spacing": 8,
82197
+ "children": [
82198
+ {
82199
+ "id": "event_delete_cancel",
82200
+ "body": {
82201
+ "package": "himalaya",
82202
+ "type": "Button",
82203
+ "props": {
82204
+ "title": "Cancel",
82205
+ "style": "secondary",
82206
+ "action": {
82207
+ "actionId": "tier5.himiOwnerLiteEvent.cancelDelete"
82208
+ }
82209
+ }
82210
+ }
82211
+ },
82212
+ {
82213
+ "id": "event_delete_confirm",
82214
+ "body": {
82215
+ "package": "himalaya",
82216
+ "type": "Button",
82217
+ "props": {
82218
+ "title": "Delete",
82219
+ "style": "destructive",
82220
+ "action": {
82221
+ "actionId": "tier5.himiOwnerLiteEvent.confirmDelete"
82222
+ }
82223
+ }
82224
+ }
82225
+ }
82226
+ ]
82227
+ }
82228
+ }
82229
+ }
82230
+ ]
82231
+ }
82232
+ },
82233
+ "modifiers": {
82234
+ "background": {
82235
+ "token": "surfaceElevated"
82236
+ },
82237
+ "border": {
82238
+ "width": 1,
82239
+ "color": {
82240
+ "token": "danger"
82241
+ }
82242
+ },
82243
+ "cornerRadius": 12,
82244
+ "padding": {
82245
+ "leading": 14,
82246
+ "trailing": 14,
82247
+ "top": 14,
82248
+ "bottom": 14
82249
+ },
82250
+ "fillMaxWidth": true,
82251
+ "hiddenPath": "$service:himiOwnerLiteEvent.noDeleteConfirmation"
82252
+ }
82253
+ },
82011
82254
  {
82012
82255
  "id": "",
82013
82256
  "body": {
@@ -82869,6 +83112,115 @@ const TEMPLATED: { pattern: string; display: string; liveSeed?: LiveSeed; static
82869
83112
  }
82870
83113
  }
82871
83114
  },
83115
+ {
83116
+ "id": "post_delete_confirmation",
83117
+ "body": {
83118
+ "package": "himalaya",
83119
+ "type": "VStack",
83120
+ "props": {
83121
+ "spacing": 10,
83122
+ "alignment": "leading",
83123
+ "children": [
83124
+ {
83125
+ "id": "post_delete_confirmation.title",
83126
+ "body": {
83127
+ "package": "himalaya",
83128
+ "type": "Text",
83129
+ "props": {
83130
+ "text": "Delete this post?",
83131
+ "style": "bodyEmphasis"
83132
+ }
83133
+ }
83134
+ },
83135
+ {
83136
+ "id": "post_delete_confirmation.record",
83137
+ "body": {
83138
+ "package": "himalaya",
83139
+ "type": "Text",
83140
+ "props": {
83141
+ "text": "$service:himiOwnerLitePost.title",
83142
+ "style": "body",
83143
+ "color": "textSecondary",
83144
+ "maxLines": 2
83145
+ }
83146
+ }
83147
+ },
83148
+ {
83149
+ "id": "",
83150
+ "body": {
83151
+ "package": "himalaya",
83152
+ "type": "Text",
83153
+ "props": {
83154
+ "text": "This cannot be undone.",
83155
+ "style": "footnote",
83156
+ "color": "textSecondary"
83157
+ }
83158
+ }
83159
+ },
83160
+ {
83161
+ "id": "",
83162
+ "body": {
83163
+ "package": "himalaya",
83164
+ "type": "HStack",
83165
+ "props": {
83166
+ "spacing": 8,
83167
+ "children": [
83168
+ {
83169
+ "id": "post_delete_cancel",
83170
+ "body": {
83171
+ "package": "himalaya",
83172
+ "type": "Button",
83173
+ "props": {
83174
+ "title": "Cancel",
83175
+ "style": "secondary",
83176
+ "action": {
83177
+ "actionId": "tier5.himiOwnerLitePost.cancelDelete"
83178
+ }
83179
+ }
83180
+ }
83181
+ },
83182
+ {
83183
+ "id": "post_delete_confirm",
83184
+ "body": {
83185
+ "package": "himalaya",
83186
+ "type": "Button",
83187
+ "props": {
83188
+ "title": "Delete",
83189
+ "style": "destructive",
83190
+ "action": {
83191
+ "actionId": "tier5.himiOwnerLitePost.confirmDelete"
83192
+ }
83193
+ }
83194
+ }
83195
+ }
83196
+ ]
83197
+ }
83198
+ }
83199
+ }
83200
+ ]
83201
+ }
83202
+ },
83203
+ "modifiers": {
83204
+ "background": {
83205
+ "token": "surfaceElevated"
83206
+ },
83207
+ "border": {
83208
+ "width": 1,
83209
+ "color": {
83210
+ "token": "danger"
83211
+ }
83212
+ },
83213
+ "cornerRadius": 12,
83214
+ "padding": {
83215
+ "leading": 14,
83216
+ "trailing": 14,
83217
+ "top": 14,
83218
+ "bottom": 14
83219
+ },
83220
+ "fillMaxWidth": true,
83221
+ "hiddenPath": "$service:himiOwnerLitePost.noDeleteConfirmation"
83222
+ }
83223
+ },
82872
83224
  {
82873
83225
  "id": "",
82874
83226
  "body": {