@wix/himalaya-cli 0.1565.0 → 0.1567.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 (29) hide show
  1. package/dist/authoring-runtime/node_modules/@wix/himalaya/dist/_types/core/sdk/app-info/src/index.d.ts +4 -0
  2. package/dist/authoring-runtime/node_modules/@wix/himalaya/dist/_types/core/sdk/wix-platform/src/business-address.d.ts +24 -0
  3. package/dist/authoring-runtime/node_modules/@wix/himalaya/dist/_types/core/sdk/wix-platform/src/index.d.ts +7 -0
  4. package/dist/authoring-runtime/node_modules/@wix/himalaya/dist/app-info.mjs +2 -1
  5. package/dist/authoring-runtime/node_modules/@wix/himalaya/dist/iap-checkout.mjs +2 -1
  6. package/dist/authoring-runtime/node_modules/@wix/himalaya/dist/screens.mjs +2 -1
  7. package/dist/authoring-runtime/node_modules/@wix/himalaya/dist/wix-platform.mjs +17 -8
  8. package/dist/cli.mjs +232 -68
  9. package/dist/preview-assets.generated.bin +0 -0
  10. package/guides/himi-json-output.md +2 -0
  11. package/guides/iap-screen-adoption.md +6 -3
  12. package/guides/one-app-to-himi-app.md +40 -1
  13. package/guides/qa-builds.md +5 -1
  14. package/guides/sdk-reference.json +2 -2
  15. package/guides/wix-business-context.md +18 -0
  16. package/package.json +2 -2
  17. package/templates/beauty-salon/tier5-src/himi-store-account/index.ts +6 -3
  18. package/templates/branded-lite/dev/index.ts +3 -0
  19. package/templates/branded-lite/tier5-src/himi-branded-lite-notifications/index.ts +78 -14
  20. package/templates/branded-lite/tier5-src/himi-store-account/index.ts +6 -3
  21. package/templates/community-club/tier5-src/himi-store-account/index.ts +6 -3
  22. package/templates/events-meetups/tier5-src/himi-store-account/index.ts +6 -3
  23. package/templates/gym-fitness/tier5-src/himi-store-account/index.ts +6 -3
  24. package/templates/nonprofit-cause/tier5-src/himi-store-account/index.ts +6 -3
  25. package/templates/podcast-creator/tier5-src/himi-store-account/index.ts +6 -3
  26. package/templates/portfolio-creative/tier5-src/himi-store-account/index.ts +6 -3
  27. package/templates/restaurant/tier5-src/himi-store-account/index.ts +6 -3
  28. package/templates/retail-store/tier5-src/himi-store-account/index.ts +6 -3
  29. package/templates/yoga-studio/tier5-src/himi-store-account/index.ts +6 -3
@@ -234,6 +234,9 @@ let signInPresentationRequested: "" | "sheet" | "full_screen" = "";
234
234
  let signInReturnTabRequested = "";
235
235
  let standaloneRequested = false;
236
236
  let pollIdentityRequested = false;
237
+ // iOS can start the arg-less boot load after the appear refresh that asks for the row; the
238
+ // newer boot probe must not land, or be kept, without it.
239
+ let restorePurchasesRequested = false;
237
240
  // Bumped by every mode switch, so a dropped probe never puts back a mode the visitor left.
238
241
  let modeSwitches = 0;
239
242
 
@@ -246,6 +249,7 @@ function appearBase(): Partial<S> {
246
249
  signInScreen: signInScreenRequested,
247
250
  standalone: standaloneRequested,
248
251
  pollIdentity: pollIdentityRequested,
252
+ restorePurchases: restorePurchasesRequested,
249
253
  ...(pollIdentityRequested ? { _poll: { ...IDENTITY_POLL } } : {}),
250
254
  };
251
255
  }
@@ -268,6 +272,7 @@ function appearConfig(s: S, arg: unknown): AppearConfig {
268
272
  // Only the sign-in screen's route carries `mode`, so it marks the form from the boot load on.
269
273
  standaloneRequested ||= s.standalone || appearing || (!routeInputConsumed && !!routeInput().mode);
270
274
  pollIdentityRequested ||= s.pollIdentity || strField(arg, "pollIdentity") === "1";
275
+ restorePurchasesRequested ||= s.restorePurchases || strField(arg, "restorePurchases") === "1";
271
276
  // The form opens on the mode its route asked for each time it appears, sign-in by
272
277
  // default: a pooled worker reopened with the same params must not open on the mode the
273
278
  // last visit toggled to.
@@ -652,8 +657,7 @@ async function probe(s: S, arg?: unknown, config: AppearConfig = appearConfig(s,
652
657
  // Not the boot load: it never carries the copy, and the appear refresh that does is coming.
653
658
  if (strField(arg, "boot") !== "1") headingReady = true;
654
659
  const memberAccountLinks = memberAccountLinksRequested;
655
- const restorePurchases = s.restorePurchases || strField(arg, "restorePurchases") === "1";
656
- if (restorePurchases) enterCommerce();
660
+ if (restorePurchasesRequested) enterCommerce();
657
661
  const routes = memberAccountLinks ? await memberAccountRoutes() : { addresses: false, wallet: false };
658
662
  let activityRows: AccountActivityRow[] = [];
659
663
  if (profile.isMember) {
@@ -681,7 +685,6 @@ async function probe(s: S, arg?: unknown, config: AppearConfig = appearConfig(s,
681
685
  email: profile.memberEmail || s.email,
682
686
  message: "",
683
687
  memberAccountLinks,
684
- restorePurchases,
685
688
  ...appearBase(),
686
689
  ...config.mode,
687
690
  ...config.visit,
@@ -234,6 +234,9 @@ let signInPresentationRequested: "" | "sheet" | "full_screen" = "";
234
234
  let signInReturnTabRequested = "";
235
235
  let standaloneRequested = false;
236
236
  let pollIdentityRequested = false;
237
+ // iOS can start the arg-less boot load after the appear refresh that asks for the row; the
238
+ // newer boot probe must not land, or be kept, without it.
239
+ let restorePurchasesRequested = false;
237
240
  // Bumped by every mode switch, so a dropped probe never puts back a mode the visitor left.
238
241
  let modeSwitches = 0;
239
242
 
@@ -246,6 +249,7 @@ function appearBase(): Partial<S> {
246
249
  signInScreen: signInScreenRequested,
247
250
  standalone: standaloneRequested,
248
251
  pollIdentity: pollIdentityRequested,
252
+ restorePurchases: restorePurchasesRequested,
249
253
  ...(pollIdentityRequested ? { _poll: { ...IDENTITY_POLL } } : {}),
250
254
  };
251
255
  }
@@ -268,6 +272,7 @@ function appearConfig(s: S, arg: unknown): AppearConfig {
268
272
  // Only the sign-in screen's route carries `mode`, so it marks the form from the boot load on.
269
273
  standaloneRequested ||= s.standalone || appearing || (!routeInputConsumed && !!routeInput().mode);
270
274
  pollIdentityRequested ||= s.pollIdentity || strField(arg, "pollIdentity") === "1";
275
+ restorePurchasesRequested ||= s.restorePurchases || strField(arg, "restorePurchases") === "1";
271
276
  // The form opens on the mode its route asked for each time it appears, sign-in by
272
277
  // default: a pooled worker reopened with the same params must not open on the mode the
273
278
  // last visit toggled to.
@@ -652,8 +657,7 @@ async function probe(s: S, arg?: unknown, config: AppearConfig = appearConfig(s,
652
657
  // Not the boot load: it never carries the copy, and the appear refresh that does is coming.
653
658
  if (strField(arg, "boot") !== "1") headingReady = true;
654
659
  const memberAccountLinks = memberAccountLinksRequested;
655
- const restorePurchases = s.restorePurchases || strField(arg, "restorePurchases") === "1";
656
- if (restorePurchases) enterCommerce();
660
+ if (restorePurchasesRequested) enterCommerce();
657
661
  const routes = memberAccountLinks ? await memberAccountRoutes() : { addresses: false, wallet: false };
658
662
  let activityRows: AccountActivityRow[] = [];
659
663
  if (profile.isMember) {
@@ -681,7 +685,6 @@ async function probe(s: S, arg?: unknown, config: AppearConfig = appearConfig(s,
681
685
  email: profile.memberEmail || s.email,
682
686
  message: "",
683
687
  memberAccountLinks,
684
- restorePurchases,
685
688
  ...appearBase(),
686
689
  ...config.mode,
687
690
  ...config.visit,
@@ -234,6 +234,9 @@ let signInPresentationRequested: "" | "sheet" | "full_screen" = "";
234
234
  let signInReturnTabRequested = "";
235
235
  let standaloneRequested = false;
236
236
  let pollIdentityRequested = false;
237
+ // iOS can start the arg-less boot load after the appear refresh that asks for the row; the
238
+ // newer boot probe must not land, or be kept, without it.
239
+ let restorePurchasesRequested = false;
237
240
  // Bumped by every mode switch, so a dropped probe never puts back a mode the visitor left.
238
241
  let modeSwitches = 0;
239
242
 
@@ -246,6 +249,7 @@ function appearBase(): Partial<S> {
246
249
  signInScreen: signInScreenRequested,
247
250
  standalone: standaloneRequested,
248
251
  pollIdentity: pollIdentityRequested,
252
+ restorePurchases: restorePurchasesRequested,
249
253
  ...(pollIdentityRequested ? { _poll: { ...IDENTITY_POLL } } : {}),
250
254
  };
251
255
  }
@@ -268,6 +272,7 @@ function appearConfig(s: S, arg: unknown): AppearConfig {
268
272
  // Only the sign-in screen's route carries `mode`, so it marks the form from the boot load on.
269
273
  standaloneRequested ||= s.standalone || appearing || (!routeInputConsumed && !!routeInput().mode);
270
274
  pollIdentityRequested ||= s.pollIdentity || strField(arg, "pollIdentity") === "1";
275
+ restorePurchasesRequested ||= s.restorePurchases || strField(arg, "restorePurchases") === "1";
271
276
  // The form opens on the mode its route asked for each time it appears, sign-in by
272
277
  // default: a pooled worker reopened with the same params must not open on the mode the
273
278
  // last visit toggled to.
@@ -652,8 +657,7 @@ async function probe(s: S, arg?: unknown, config: AppearConfig = appearConfig(s,
652
657
  // Not the boot load: it never carries the copy, and the appear refresh that does is coming.
653
658
  if (strField(arg, "boot") !== "1") headingReady = true;
654
659
  const memberAccountLinks = memberAccountLinksRequested;
655
- const restorePurchases = s.restorePurchases || strField(arg, "restorePurchases") === "1";
656
- if (restorePurchases) enterCommerce();
660
+ if (restorePurchasesRequested) enterCommerce();
657
661
  const routes = memberAccountLinks ? await memberAccountRoutes() : { addresses: false, wallet: false };
658
662
  let activityRows: AccountActivityRow[] = [];
659
663
  if (profile.isMember) {
@@ -681,7 +685,6 @@ async function probe(s: S, arg?: unknown, config: AppearConfig = appearConfig(s,
681
685
  email: profile.memberEmail || s.email,
682
686
  message: "",
683
687
  memberAccountLinks,
684
- restorePurchases,
685
688
  ...appearBase(),
686
689
  ...config.mode,
687
690
  ...config.visit,
@@ -234,6 +234,9 @@ let signInPresentationRequested: "" | "sheet" | "full_screen" = "";
234
234
  let signInReturnTabRequested = "";
235
235
  let standaloneRequested = false;
236
236
  let pollIdentityRequested = false;
237
+ // iOS can start the arg-less boot load after the appear refresh that asks for the row; the
238
+ // newer boot probe must not land, or be kept, without it.
239
+ let restorePurchasesRequested = false;
237
240
  // Bumped by every mode switch, so a dropped probe never puts back a mode the visitor left.
238
241
  let modeSwitches = 0;
239
242
 
@@ -246,6 +249,7 @@ function appearBase(): Partial<S> {
246
249
  signInScreen: signInScreenRequested,
247
250
  standalone: standaloneRequested,
248
251
  pollIdentity: pollIdentityRequested,
252
+ restorePurchases: restorePurchasesRequested,
249
253
  ...(pollIdentityRequested ? { _poll: { ...IDENTITY_POLL } } : {}),
250
254
  };
251
255
  }
@@ -268,6 +272,7 @@ function appearConfig(s: S, arg: unknown): AppearConfig {
268
272
  // Only the sign-in screen's route carries `mode`, so it marks the form from the boot load on.
269
273
  standaloneRequested ||= s.standalone || appearing || (!routeInputConsumed && !!routeInput().mode);
270
274
  pollIdentityRequested ||= s.pollIdentity || strField(arg, "pollIdentity") === "1";
275
+ restorePurchasesRequested ||= s.restorePurchases || strField(arg, "restorePurchases") === "1";
271
276
  // The form opens on the mode its route asked for each time it appears, sign-in by
272
277
  // default: a pooled worker reopened with the same params must not open on the mode the
273
278
  // last visit toggled to.
@@ -652,8 +657,7 @@ async function probe(s: S, arg?: unknown, config: AppearConfig = appearConfig(s,
652
657
  // Not the boot load: it never carries the copy, and the appear refresh that does is coming.
653
658
  if (strField(arg, "boot") !== "1") headingReady = true;
654
659
  const memberAccountLinks = memberAccountLinksRequested;
655
- const restorePurchases = s.restorePurchases || strField(arg, "restorePurchases") === "1";
656
- if (restorePurchases) enterCommerce();
660
+ if (restorePurchasesRequested) enterCommerce();
657
661
  const routes = memberAccountLinks ? await memberAccountRoutes() : { addresses: false, wallet: false };
658
662
  let activityRows: AccountActivityRow[] = [];
659
663
  if (profile.isMember) {
@@ -681,7 +685,6 @@ async function probe(s: S, arg?: unknown, config: AppearConfig = appearConfig(s,
681
685
  email: profile.memberEmail || s.email,
682
686
  message: "",
683
687
  memberAccountLinks,
684
- restorePurchases,
685
688
  ...appearBase(),
686
689
  ...config.mode,
687
690
  ...config.visit,