@wix/himalaya-cli 0.1388.0 → 0.1389.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.
- package/dist/authoring-runtime/node_modules/@wix/himalaya/dist/_types/stdlib/flows/iap-checkout/src/commerce-contract.d.ts +24 -0
- package/dist/authoring-runtime/node_modules/@wix/himalaya/dist/_types/stdlib/flows/iap-checkout/src/commerce-core.d.ts +3 -0
- package/dist/authoring-runtime/node_modules/@wix/himalaya/dist/_types/stdlib/flows/iap-checkout/src/index.d.ts +1 -1
- package/dist/authoring-runtime/node_modules/@wix/himalaya/dist/iap-checkout.mjs +57 -0
- package/dist/authoring-runtime/node_modules/@wix/himalaya/dist/screens.mjs +57 -0
- package/dist/cli.mjs +7 -5
- package/guides/iap-screen-adoption.md +53 -1
- package/guides/sdk-reference.json +8 -2
- package/package.json +2 -2
- package/templates/beauty-salon/dev/index.ts +193 -1
- package/templates/beauty-salon/tier5-src/_shared/iap-worker.ts +84 -3
- package/templates/beauty-salon/tier5-src/himi-store-account/index.ts +36 -1
- package/templates/beauty-salon-owner/config.ts +11 -0
- package/templates/beauty-salon-owner/dev/index.ts +540 -0
- package/templates/beauty-salon-owner/himalaya.content.json +6 -0
- package/templates/beauty-salon-owner/platforms.json +2 -1
- package/templates/beauty-salon-owner/tier5-src/himi-owner-lite-wrist/index.ts +350 -0
- package/templates/branded-lite/dev/index.ts +194 -2
- package/templates/branded-lite/tier5-src/_shared/iap-worker.ts +84 -3
- package/templates/branded-lite/tier5-src/himi-store-account/index.ts +36 -1
- package/templates/community-club/dev/index.ts +193 -1
- package/templates/community-club/tier5-src/_shared/iap-worker.ts +84 -3
- package/templates/community-club/tier5-src/himi-store-account/index.ts +36 -1
- package/templates/community-club-owner/config.ts +11 -0
- package/templates/community-club-owner/dev/index.ts +540 -0
- package/templates/community-club-owner/himalaya.content.json +6 -0
- package/templates/community-club-owner/platforms.json +2 -1
- package/templates/community-club-owner/tier5-src/himi-owner-lite-wrist/index.ts +350 -0
- package/templates/events-meetups/dev/index.ts +193 -1
- package/templates/events-meetups/tier5-src/_shared/iap-worker.ts +84 -3
- package/templates/events-meetups/tier5-src/himi-store-account/index.ts +36 -1
- package/templates/events-meetups-owner/config.ts +11 -0
- package/templates/events-meetups-owner/dev/index.ts +540 -0
- package/templates/events-meetups-owner/himalaya.content.json +6 -0
- package/templates/events-meetups-owner/platforms.json +2 -1
- package/templates/events-meetups-owner/tier5-src/himi-owner-lite-wrist/index.ts +350 -0
- package/templates/gym-fitness/dev/index.ts +193 -1
- package/templates/gym-fitness/tier5-src/_shared/iap-worker.ts +84 -3
- package/templates/gym-fitness/tier5-src/himi-store-account/index.ts +36 -1
- package/templates/gym-fitness-owner/config.ts +11 -0
- package/templates/gym-fitness-owner/dev/index.ts +540 -0
- package/templates/gym-fitness-owner/himalaya.content.json +6 -0
- package/templates/gym-fitness-owner/platforms.json +2 -1
- package/templates/gym-fitness-owner/tier5-src/himi-owner-lite-wrist/index.ts +350 -0
- package/templates/nonprofit-cause/dev/index.ts +193 -1
- package/templates/nonprofit-cause/tier5-src/_shared/iap-worker.ts +84 -3
- package/templates/nonprofit-cause/tier5-src/himi-store-account/index.ts +36 -1
- package/templates/nonprofit-cause-owner/config.ts +11 -0
- package/templates/nonprofit-cause-owner/dev/index.ts +540 -0
- package/templates/nonprofit-cause-owner/himalaya.content.json +6 -0
- package/templates/nonprofit-cause-owner/platforms.json +2 -1
- package/templates/nonprofit-cause-owner/tier5-src/himi-owner-lite-wrist/index.ts +350 -0
- package/templates/owner-lite/config.ts +11 -0
- package/templates/owner-lite/dev/index.ts +540 -0
- package/templates/owner-lite/himalaya.content.json +6 -0
- package/templates/owner-lite/platforms.json +2 -1
- package/templates/owner-lite/tier5-src/himi-owner-lite-wrist/index.ts +350 -0
- package/templates/podcast-creator/dev/index.ts +193 -1
- package/templates/podcast-creator/tier5-src/_shared/iap-worker.ts +84 -3
- package/templates/podcast-creator/tier5-src/himi-store-account/index.ts +36 -1
- package/templates/podcast-creator-owner/config.ts +11 -0
- package/templates/podcast-creator-owner/dev/index.ts +540 -0
- package/templates/podcast-creator-owner/himalaya.content.json +6 -0
- package/templates/podcast-creator-owner/platforms.json +2 -1
- package/templates/podcast-creator-owner/tier5-src/himi-owner-lite-wrist/index.ts +350 -0
- package/templates/portfolio-creative/dev/index.ts +193 -1
- package/templates/portfolio-creative/tier5-src/_shared/iap-worker.ts +84 -3
- package/templates/portfolio-creative/tier5-src/himi-store-account/index.ts +36 -1
- package/templates/portfolio-creative-owner/config.ts +11 -0
- package/templates/portfolio-creative-owner/dev/index.ts +540 -0
- package/templates/portfolio-creative-owner/himalaya.content.json +6 -0
- package/templates/portfolio-creative-owner/platforms.json +2 -1
- package/templates/portfolio-creative-owner/tier5-src/himi-owner-lite-wrist/index.ts +350 -0
- package/templates/restaurant/dev/index.ts +193 -1
- package/templates/restaurant/tier5-src/_shared/iap-worker.ts +84 -3
- package/templates/restaurant/tier5-src/himi-store-account/index.ts +36 -1
- package/templates/restaurant-owner/config.ts +11 -0
- package/templates/restaurant-owner/dev/index.ts +540 -0
- package/templates/restaurant-owner/himalaya.content.json +6 -0
- package/templates/restaurant-owner/platforms.json +2 -1
- package/templates/restaurant-owner/tier5-src/himi-owner-lite-wrist/index.ts +350 -0
- package/templates/retail-store/dev/index.ts +193 -1
- package/templates/retail-store/tier5-src/_shared/iap-worker.ts +84 -3
- package/templates/retail-store/tier5-src/himi-store-account/index.ts +36 -1
- package/templates/retail-store-owner/config.ts +11 -0
- package/templates/retail-store-owner/dev/index.ts +540 -0
- package/templates/retail-store-owner/himalaya.content.json +6 -0
- package/templates/retail-store-owner/platforms.json +2 -1
- package/templates/retail-store-owner/tier5-src/himi-owner-lite-wrist/index.ts +350 -0
- package/templates/yoga-studio/dev/index.ts +193 -1
- package/templates/yoga-studio/tier5-src/_shared/iap-worker.ts +84 -3
- package/templates/yoga-studio/tier5-src/himi-store-account/index.ts +36 -1
- package/templates/yoga-studio-owner/config.ts +11 -0
- package/templates/yoga-studio-owner/dev/index.ts +540 -0
- package/templates/yoga-studio-owner/himalaya.content.json +6 -0
- package/templates/yoga-studio-owner/platforms.json +2 -1
- package/templates/yoga-studio-owner/tier5-src/himi-owner-lite-wrist/index.ts +350 -0
|
@@ -14,6 +14,8 @@ import { searchOrders, type WixOrder } from "@himalaya/wix-ecom";
|
|
|
14
14
|
import { guestProfile, loadMemberProfile, strOf, fmtDate, titleCase, type AccountActivityRow } from "../_shared/himi-account";
|
|
15
15
|
import { stashCopy, copyParam, copyTemplate } from "../_shared/himi-copy.js";
|
|
16
16
|
import { memberAccountRoutes } from "../_shared/member-account-routes.js";
|
|
17
|
+
import { createIapCommerce, onlineProgramOrders, pricingPlanOrders, storesAppleSalesEnabled, storesProductOrders } from "@himalaya/iap-checkout";
|
|
18
|
+
import { IAP_RESTORE_KEYS, NO_IAP_RESTORE, createIapRestore, resetUnhydratedKeysOnOlderRuntime, type IapRestoreFields } from "../_shared/iap-worker.js";
|
|
17
19
|
|
|
18
20
|
interface AuthRouteInput {
|
|
19
21
|
intent?: string;
|
|
@@ -152,7 +154,7 @@ function authHeadline(s: S, isRegistering: boolean, isRecovering: boolean): { au
|
|
|
152
154
|
}
|
|
153
155
|
}
|
|
154
156
|
|
|
155
|
-
interface S {
|
|
157
|
+
interface S extends IapRestoreFields {
|
|
156
158
|
status: "loading" | "ready";
|
|
157
159
|
isMember: boolean;
|
|
158
160
|
notMember: boolean;
|
|
@@ -214,6 +216,27 @@ interface S {
|
|
|
214
216
|
noMemberAddresses: boolean;
|
|
215
217
|
/** Hides My Wallet where this runtime cannot reach saved cards. */
|
|
216
218
|
noMemberWallet: boolean;
|
|
219
|
+
/** Set once a descriptor asks for the Restore purchases row (appear param
|
|
220
|
+
* `restorePurchases: "1"`). Only then does the worker reach the App Store layer, so a
|
|
221
|
+
* descriptor that renders no such row need not declare `iap`. */
|
|
222
|
+
restorePurchases: boolean;
|
|
223
|
+
}
|
|
224
|
+
|
|
225
|
+
// Restore purchases (App Review 3.1.1) for every vertical the app sells through the App Store. The
|
|
226
|
+
// row shows once purchasing is ready on this host (a bound iOS binary with managed StoreKit), to a
|
|
227
|
+
// guest too: the restore itself asks them to sign in.
|
|
228
|
+
const commerce = createIapCommerce({
|
|
229
|
+
adapters: [onlineProgramOrders, pricingPlanOrders, ...(storesAppleSalesEnabled() ? [storesProductOrders] : [])],
|
|
230
|
+
onChange: () => { void svc.restorePublish(); },
|
|
231
|
+
});
|
|
232
|
+
const restore = createIapRestore(commerce, { prefix: "storeAccount", repaint: () => { void svc.restorePublish(); } });
|
|
233
|
+
let commerceEntered = false;
|
|
234
|
+
|
|
235
|
+
/** The first entry reads readiness and recovers held purchases; later ones reconcile, as on any
|
|
236
|
+
* screen that sells. */
|
|
237
|
+
function enterCommerce(): void {
|
|
238
|
+
void (commerceEntered ? commerce.reconcile() : commerce.start());
|
|
239
|
+
commerceEntered = true;
|
|
217
240
|
}
|
|
218
241
|
|
|
219
242
|
function derive(s: S): S {
|
|
@@ -234,6 +257,7 @@ function derive(s: S): S {
|
|
|
234
257
|
hideSignInChoices: isRegistering || isRecovering,
|
|
235
258
|
hasActivity,
|
|
236
259
|
noActivity: !hasActivity,
|
|
260
|
+
...restore.fields(s.restorePurchases && commerce.readiness().status === "ready"),
|
|
237
261
|
authTitle: headline.authTitle,
|
|
238
262
|
authBody: headline.authBody,
|
|
239
263
|
hasReturnPath,
|
|
@@ -288,6 +312,8 @@ async function probe(s: S, arg?: unknown): Promise<S> {
|
|
|
288
312
|
const intent = authIntentFromArg(arg, s);
|
|
289
313
|
const profile = await loadMemberProfile(copyParam("storeAccount.guestDetail", "Sign in to keep your cart and orders connected."));
|
|
290
314
|
const memberAccountLinks = s.memberAccountLinks || strField(arg, "memberAccountLinks") === "1";
|
|
315
|
+
const restorePurchases = s.restorePurchases || strField(arg, "restorePurchases") === "1";
|
|
316
|
+
if (restorePurchases) enterCommerce();
|
|
291
317
|
const routes = memberAccountLinks ? await memberAccountRoutes() : { addresses: false, wallet: false };
|
|
292
318
|
let activityRows: AccountActivityRow[] = [];
|
|
293
319
|
if (profile.isMember) {
|
|
@@ -313,6 +339,7 @@ async function probe(s: S, arg?: unknown): Promise<S> {
|
|
|
313
339
|
email: profile.memberEmail || s.email,
|
|
314
340
|
message: "",
|
|
315
341
|
memberAccountLinks,
|
|
342
|
+
restorePurchases,
|
|
316
343
|
noMemberAddresses: !routes.addresses,
|
|
317
344
|
noMemberWallet: !routes.wallet,
|
|
318
345
|
activityRows,
|
|
@@ -365,7 +392,10 @@ const svc = defineService<S, {
|
|
|
365
392
|
signIn: (s: S) => Promise<S | undefined>;
|
|
366
393
|
register: (s: S) => Promise<S | undefined>;
|
|
367
394
|
signOut: (s: S) => Promise<S>;
|
|
395
|
+
restorePublish: (s: S) => S;
|
|
396
|
+
iapRestore: (s: S) => Promise<undefined>;
|
|
368
397
|
}>("himiStoreAccount", {
|
|
398
|
+
notHydrated: [...IAP_RESTORE_KEYS],
|
|
369
399
|
state: derive({
|
|
370
400
|
status: "loading",
|
|
371
401
|
isMember: false,
|
|
@@ -411,6 +441,8 @@ const svc = defineService<S, {
|
|
|
411
441
|
memberAccountLinks: false,
|
|
412
442
|
noMemberAddresses: true,
|
|
413
443
|
noMemberWallet: true,
|
|
444
|
+
restorePurchases: false,
|
|
445
|
+
...NO_IAP_RESTORE,
|
|
414
446
|
}),
|
|
415
447
|
actions: {
|
|
416
448
|
load: (s, arg) => { stashCopy(arg); return probe(s, arg); },
|
|
@@ -503,8 +535,11 @@ const svc = defineService<S, {
|
|
|
503
535
|
};
|
|
504
536
|
return derive(cleared);
|
|
505
537
|
},
|
|
538
|
+
restorePublish: (s) => derive(s),
|
|
539
|
+
iapRestore: async () => { await restore.run(); return undefined; },
|
|
506
540
|
},
|
|
507
541
|
});
|
|
508
542
|
|
|
543
|
+
resetUnhydratedKeysOnOlderRuntime(svc, { ...svc.getState(), ...NO_IAP_RESTORE }, IAP_RESTORE_KEYS);
|
|
509
544
|
svc.load();
|
|
510
545
|
export { svc };
|
|
@@ -41,6 +41,17 @@ export default defineApp({
|
|
|
41
41
|
designTokensPath: "./tokens.json",
|
|
42
42
|
navigation: {
|
|
43
43
|
"navKind": "responsive",
|
|
44
|
+
"surfaces": {
|
|
45
|
+
"watch": {
|
|
46
|
+
"destinations": [
|
|
47
|
+
"home"
|
|
48
|
+
],
|
|
49
|
+
"navKind": "single",
|
|
50
|
+
"screenIds": {
|
|
51
|
+
"home": "himi_owner_lite_wrist_home"
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
},
|
|
44
55
|
"scheme": "himalaya-__HIMI_APP_SLUG__",
|
|
45
56
|
"deepLinkPatterns": [],
|
|
46
57
|
"linkableScreens": [
|
|
@@ -63809,6 +63809,546 @@ const SCREENS = runtimeSetting({
|
|
|
63809
63809
|
"bundleVersion": "0.0.1"
|
|
63810
63810
|
}
|
|
63811
63811
|
},
|
|
63812
|
+
"himi_owner_lite_wrist_home": {
|
|
63813
|
+
"screenId": "himi_owner_lite_wrist_home",
|
|
63814
|
+
"renderer": "sdui_intent",
|
|
63815
|
+
"title": "Next up",
|
|
63816
|
+
"schemaVersion": 1,
|
|
63817
|
+
"cacheControl": {
|
|
63818
|
+
"maxAge": 0,
|
|
63819
|
+
"staleWhileRevalidate": 0
|
|
63820
|
+
},
|
|
63821
|
+
"telemetryScreenName": "himi_owner_lite_wrist_home",
|
|
63822
|
+
"payload": {
|
|
63823
|
+
"id": "himi_owner_lite_wrist_home.root",
|
|
63824
|
+
"body": {
|
|
63825
|
+
"package": "himalaya",
|
|
63826
|
+
"type": "VStack",
|
|
63827
|
+
"props": {
|
|
63828
|
+
"spacing": 8,
|
|
63829
|
+
"alignment": "leading",
|
|
63830
|
+
"children": [
|
|
63831
|
+
{
|
|
63832
|
+
"id": "wrist.site",
|
|
63833
|
+
"body": {
|
|
63834
|
+
"package": "himalaya",
|
|
63835
|
+
"type": "Text",
|
|
63836
|
+
"props": {
|
|
63837
|
+
"text": "$service:ownerWrist.siteName",
|
|
63838
|
+
"style": "caption",
|
|
63839
|
+
"color": "textSecondary",
|
|
63840
|
+
"maxLines": 1,
|
|
63841
|
+
"collapseWhenEmpty": true
|
|
63842
|
+
}
|
|
63843
|
+
}
|
|
63844
|
+
},
|
|
63845
|
+
{
|
|
63846
|
+
"id": "wrist.home.message",
|
|
63847
|
+
"body": {
|
|
63848
|
+
"package": "himalaya",
|
|
63849
|
+
"type": "Text",
|
|
63850
|
+
"props": {
|
|
63851
|
+
"text": "$service:ownerWrist.message",
|
|
63852
|
+
"style": "footnote",
|
|
63853
|
+
"color": "textSecondary",
|
|
63854
|
+
"maxLines": 3,
|
|
63855
|
+
"collapseWhenEmpty": true
|
|
63856
|
+
}
|
|
63857
|
+
}
|
|
63858
|
+
},
|
|
63859
|
+
{
|
|
63860
|
+
"id": "wrist.home.error",
|
|
63861
|
+
"body": {
|
|
63862
|
+
"package": "himalaya",
|
|
63863
|
+
"type": "Text",
|
|
63864
|
+
"props": {
|
|
63865
|
+
"text": "$service:ownerWrist.actionError",
|
|
63866
|
+
"style": "caption",
|
|
63867
|
+
"color": "danger",
|
|
63868
|
+
"maxLines": 3,
|
|
63869
|
+
"collapseWhenEmpty": true
|
|
63870
|
+
}
|
|
63871
|
+
}
|
|
63872
|
+
},
|
|
63873
|
+
{
|
|
63874
|
+
"id": "",
|
|
63875
|
+
"body": {
|
|
63876
|
+
"package": "himalaya",
|
|
63877
|
+
"type": "VStack",
|
|
63878
|
+
"props": {
|
|
63879
|
+
"spacing": 2,
|
|
63880
|
+
"alignment": "leading",
|
|
63881
|
+
"children": [
|
|
63882
|
+
{
|
|
63883
|
+
"id": "wrist.next.label",
|
|
63884
|
+
"body": {
|
|
63885
|
+
"package": "himalaya",
|
|
63886
|
+
"type": "Text",
|
|
63887
|
+
"props": {
|
|
63888
|
+
"text": "Next up",
|
|
63889
|
+
"style": "caption",
|
|
63890
|
+
"color": "textSecondary"
|
|
63891
|
+
}
|
|
63892
|
+
}
|
|
63893
|
+
},
|
|
63894
|
+
{
|
|
63895
|
+
"id": "wrist.next.countdown",
|
|
63896
|
+
"body": {
|
|
63897
|
+
"package": "himalaya",
|
|
63898
|
+
"type": "Text",
|
|
63899
|
+
"props": {
|
|
63900
|
+
"text": "$service:ownerWrist.nextUp.countdown",
|
|
63901
|
+
"style": "title1",
|
|
63902
|
+
"monospacedDigits": true
|
|
63903
|
+
}
|
|
63904
|
+
}
|
|
63905
|
+
},
|
|
63906
|
+
{
|
|
63907
|
+
"id": "wrist.next.name",
|
|
63908
|
+
"body": {
|
|
63909
|
+
"package": "himalaya",
|
|
63910
|
+
"type": "Text",
|
|
63911
|
+
"props": {
|
|
63912
|
+
"text": "$service:ownerWrist.nextUp.name",
|
|
63913
|
+
"style": "bodyEmphasis",
|
|
63914
|
+
"maxLines": 1
|
|
63915
|
+
}
|
|
63916
|
+
}
|
|
63917
|
+
},
|
|
63918
|
+
{
|
|
63919
|
+
"id": "wrist.next.service",
|
|
63920
|
+
"body": {
|
|
63921
|
+
"package": "himalaya",
|
|
63922
|
+
"type": "Text",
|
|
63923
|
+
"props": {
|
|
63924
|
+
"text": "$service:ownerWrist.nextUp.service",
|
|
63925
|
+
"style": "footnote",
|
|
63926
|
+
"maxLines": 1
|
|
63927
|
+
}
|
|
63928
|
+
}
|
|
63929
|
+
},
|
|
63930
|
+
{
|
|
63931
|
+
"id": "wrist.next.range",
|
|
63932
|
+
"body": {
|
|
63933
|
+
"package": "himalaya",
|
|
63934
|
+
"type": "Text",
|
|
63935
|
+
"props": {
|
|
63936
|
+
"text": "$service:ownerWrist.nextUp.rangeLabel",
|
|
63937
|
+
"style": "caption",
|
|
63938
|
+
"color": "textSecondary"
|
|
63939
|
+
}
|
|
63940
|
+
}
|
|
63941
|
+
}
|
|
63942
|
+
]
|
|
63943
|
+
}
|
|
63944
|
+
},
|
|
63945
|
+
"modifiers": {
|
|
63946
|
+
"hiddenPath": "$service:ownerWrist.doneToday"
|
|
63947
|
+
}
|
|
63948
|
+
},
|
|
63949
|
+
{
|
|
63950
|
+
"id": "",
|
|
63951
|
+
"body": {
|
|
63952
|
+
"package": "himalaya",
|
|
63953
|
+
"type": "VStack",
|
|
63954
|
+
"props": {
|
|
63955
|
+
"spacing": 2,
|
|
63956
|
+
"alignment": "leading",
|
|
63957
|
+
"children": [
|
|
63958
|
+
{
|
|
63959
|
+
"id": "wrist.tomorrow.label",
|
|
63960
|
+
"body": {
|
|
63961
|
+
"package": "himalaya",
|
|
63962
|
+
"type": "Text",
|
|
63963
|
+
"props": {
|
|
63964
|
+
"text": "$service:ownerWrist.tomorrowFirst.whenLabel",
|
|
63965
|
+
"style": "caption",
|
|
63966
|
+
"color": "textSecondary"
|
|
63967
|
+
}
|
|
63968
|
+
}
|
|
63969
|
+
},
|
|
63970
|
+
{
|
|
63971
|
+
"id": "wrist.tomorrow.time",
|
|
63972
|
+
"body": {
|
|
63973
|
+
"package": "himalaya",
|
|
63974
|
+
"type": "Text",
|
|
63975
|
+
"props": {
|
|
63976
|
+
"text": "$service:ownerWrist.tomorrowFirst.timeLabel",
|
|
63977
|
+
"style": "bodyEmphasis"
|
|
63978
|
+
}
|
|
63979
|
+
}
|
|
63980
|
+
},
|
|
63981
|
+
{
|
|
63982
|
+
"id": "wrist.tomorrow.name",
|
|
63983
|
+
"body": {
|
|
63984
|
+
"package": "himalaya",
|
|
63985
|
+
"type": "Text",
|
|
63986
|
+
"props": {
|
|
63987
|
+
"text": "$service:ownerWrist.tomorrowFirst.name",
|
|
63988
|
+
"style": "footnote",
|
|
63989
|
+
"maxLines": 1
|
|
63990
|
+
}
|
|
63991
|
+
}
|
|
63992
|
+
}
|
|
63993
|
+
]
|
|
63994
|
+
}
|
|
63995
|
+
},
|
|
63996
|
+
"modifiers": {
|
|
63997
|
+
"hiddenPath": "$service:ownerWrist.hideTomorrow"
|
|
63998
|
+
}
|
|
63999
|
+
},
|
|
64000
|
+
{
|
|
64001
|
+
"id": "wrist.requests.badge",
|
|
64002
|
+
"body": {
|
|
64003
|
+
"package": "himalaya",
|
|
64004
|
+
"type": "Button",
|
|
64005
|
+
"props": {
|
|
64006
|
+
"title": "$service:ownerWrist.requestBadge",
|
|
64007
|
+
"style": "primary",
|
|
64008
|
+
"fullWidth": true,
|
|
64009
|
+
"action": {
|
|
64010
|
+
"actionId": "companion.ownerLite.openRequests"
|
|
64011
|
+
}
|
|
64012
|
+
}
|
|
64013
|
+
},
|
|
64014
|
+
"modifiers": {
|
|
64015
|
+
"hiddenPath": "$service:ownerWrist.noRequests"
|
|
64016
|
+
}
|
|
64017
|
+
},
|
|
64018
|
+
{
|
|
64019
|
+
"id": "wrist.requests.none",
|
|
64020
|
+
"body": {
|
|
64021
|
+
"package": "himalaya",
|
|
64022
|
+
"type": "Text",
|
|
64023
|
+
"props": {
|
|
64024
|
+
"text": "No requests waiting",
|
|
64025
|
+
"style": "caption",
|
|
64026
|
+
"color": "textSecondary"
|
|
64027
|
+
}
|
|
64028
|
+
},
|
|
64029
|
+
"modifiers": {
|
|
64030
|
+
"hiddenPath": "$service:ownerWrist.hideNoRequests"
|
|
64031
|
+
}
|
|
64032
|
+
},
|
|
64033
|
+
{
|
|
64034
|
+
"id": "wrist.later",
|
|
64035
|
+
"body": {
|
|
64036
|
+
"package": "himalaya",
|
|
64037
|
+
"type": "LazyList",
|
|
64038
|
+
"props": {
|
|
64039
|
+
"spacing": 4,
|
|
64040
|
+
"itemsPath": "$service:ownerWrist.later",
|
|
64041
|
+
"items": [
|
|
64042
|
+
{
|
|
64043
|
+
"id": "",
|
|
64044
|
+
"body": {
|
|
64045
|
+
"package": "himalaya",
|
|
64046
|
+
"type": "VStack",
|
|
64047
|
+
"props": {
|
|
64048
|
+
"spacing": 0,
|
|
64049
|
+
"alignment": "leading",
|
|
64050
|
+
"children": [
|
|
64051
|
+
{
|
|
64052
|
+
"id": "",
|
|
64053
|
+
"body": {
|
|
64054
|
+
"package": "himalaya",
|
|
64055
|
+
"type": "Text",
|
|
64056
|
+
"props": {
|
|
64057
|
+
"text": "$item.timeLabel",
|
|
64058
|
+
"style": "footnote",
|
|
64059
|
+
"monospacedDigits": true
|
|
64060
|
+
}
|
|
64061
|
+
}
|
|
64062
|
+
},
|
|
64063
|
+
{
|
|
64064
|
+
"id": "",
|
|
64065
|
+
"body": {
|
|
64066
|
+
"package": "himalaya",
|
|
64067
|
+
"type": "Text",
|
|
64068
|
+
"props": {
|
|
64069
|
+
"text": "$item.name",
|
|
64070
|
+
"style": "caption",
|
|
64071
|
+
"color": "textSecondary",
|
|
64072
|
+
"maxLines": 1
|
|
64073
|
+
}
|
|
64074
|
+
}
|
|
64075
|
+
}
|
|
64076
|
+
]
|
|
64077
|
+
}
|
|
64078
|
+
}
|
|
64079
|
+
}
|
|
64080
|
+
]
|
|
64081
|
+
}
|
|
64082
|
+
}
|
|
64083
|
+
}
|
|
64084
|
+
]
|
|
64085
|
+
}
|
|
64086
|
+
},
|
|
64087
|
+
"modifiers": {
|
|
64088
|
+
"padding": {
|
|
64089
|
+
"leading": 6,
|
|
64090
|
+
"trailing": 6,
|
|
64091
|
+
"top": 4,
|
|
64092
|
+
"bottom": 8
|
|
64093
|
+
}
|
|
64094
|
+
}
|
|
64095
|
+
},
|
|
64096
|
+
"logicBundle": {
|
|
64097
|
+
"url": "http://localhost:8190/v1/bundles/himi-owner-lite-wrist",
|
|
64098
|
+
"integrity": "",
|
|
64099
|
+
"contentType": "application/javascript+ts-bundle",
|
|
64100
|
+
"declaredCapabilities": [
|
|
64101
|
+
"wix_api"
|
|
64102
|
+
],
|
|
64103
|
+
"minBinaryVersion": "0.1.0",
|
|
64104
|
+
"bundleVersion": "0.0.1"
|
|
64105
|
+
}
|
|
64106
|
+
},
|
|
64107
|
+
"himi_owner_lite_wrist_request": {
|
|
64108
|
+
"screenId": "himi_owner_lite_wrist_request",
|
|
64109
|
+
"renderer": "sdui_intent",
|
|
64110
|
+
"title": "Booking requests",
|
|
64111
|
+
"schemaVersion": 1,
|
|
64112
|
+
"cacheControl": {
|
|
64113
|
+
"maxAge": 0,
|
|
64114
|
+
"staleWhileRevalidate": 0
|
|
64115
|
+
},
|
|
64116
|
+
"telemetryScreenName": "himi_owner_lite_wrist_request",
|
|
64117
|
+
"payload": {
|
|
64118
|
+
"id": "himi_owner_lite_wrist_request.root",
|
|
64119
|
+
"body": {
|
|
64120
|
+
"package": "himalaya",
|
|
64121
|
+
"type": "VStack",
|
|
64122
|
+
"props": {
|
|
64123
|
+
"spacing": 6,
|
|
64124
|
+
"alignment": "leading",
|
|
64125
|
+
"children": [
|
|
64126
|
+
{
|
|
64127
|
+
"id": "wrist.request.position",
|
|
64128
|
+
"body": {
|
|
64129
|
+
"package": "himalaya",
|
|
64130
|
+
"type": "Text",
|
|
64131
|
+
"props": {
|
|
64132
|
+
"text": "$service:ownerWrist.requestPosition",
|
|
64133
|
+
"style": "caption",
|
|
64134
|
+
"color": "textSecondary"
|
|
64135
|
+
}
|
|
64136
|
+
}
|
|
64137
|
+
},
|
|
64138
|
+
{
|
|
64139
|
+
"id": "wrist.request.message",
|
|
64140
|
+
"body": {
|
|
64141
|
+
"package": "himalaya",
|
|
64142
|
+
"type": "Text",
|
|
64143
|
+
"props": {
|
|
64144
|
+
"text": "$service:ownerWrist.statusMessage",
|
|
64145
|
+
"style": "footnote",
|
|
64146
|
+
"color": "textSecondary",
|
|
64147
|
+
"maxLines": 3,
|
|
64148
|
+
"collapseWhenEmpty": true
|
|
64149
|
+
}
|
|
64150
|
+
}
|
|
64151
|
+
},
|
|
64152
|
+
{
|
|
64153
|
+
"id": "wrist.request.name",
|
|
64154
|
+
"body": {
|
|
64155
|
+
"package": "himalaya",
|
|
64156
|
+
"type": "Text",
|
|
64157
|
+
"props": {
|
|
64158
|
+
"text": "$service:ownerWrist.current.name",
|
|
64159
|
+
"style": "bodyEmphasis",
|
|
64160
|
+
"maxLines": 1
|
|
64161
|
+
}
|
|
64162
|
+
}
|
|
64163
|
+
},
|
|
64164
|
+
{
|
|
64165
|
+
"id": "wrist.request.service",
|
|
64166
|
+
"body": {
|
|
64167
|
+
"package": "himalaya",
|
|
64168
|
+
"type": "Text",
|
|
64169
|
+
"props": {
|
|
64170
|
+
"text": "$service:ownerWrist.current.service",
|
|
64171
|
+
"style": "footnote",
|
|
64172
|
+
"maxLines": 1
|
|
64173
|
+
}
|
|
64174
|
+
}
|
|
64175
|
+
},
|
|
64176
|
+
{
|
|
64177
|
+
"id": "wrist.request.when",
|
|
64178
|
+
"body": {
|
|
64179
|
+
"package": "himalaya",
|
|
64180
|
+
"type": "Text",
|
|
64181
|
+
"props": {
|
|
64182
|
+
"text": "$service:ownerWrist.current.dayLabel",
|
|
64183
|
+
"style": "footnote"
|
|
64184
|
+
}
|
|
64185
|
+
}
|
|
64186
|
+
},
|
|
64187
|
+
{
|
|
64188
|
+
"id": "wrist.request.error",
|
|
64189
|
+
"body": {
|
|
64190
|
+
"package": "himalaya",
|
|
64191
|
+
"type": "Text",
|
|
64192
|
+
"props": {
|
|
64193
|
+
"text": "$service:ownerWrist.actionError",
|
|
64194
|
+
"style": "caption",
|
|
64195
|
+
"color": "danger",
|
|
64196
|
+
"maxLines": 3,
|
|
64197
|
+
"collapseWhenEmpty": true
|
|
64198
|
+
}
|
|
64199
|
+
}
|
|
64200
|
+
},
|
|
64201
|
+
{
|
|
64202
|
+
"id": "",
|
|
64203
|
+
"body": {
|
|
64204
|
+
"package": "himalaya",
|
|
64205
|
+
"type": "VStack",
|
|
64206
|
+
"props": {
|
|
64207
|
+
"spacing": 6,
|
|
64208
|
+
"alignment": "leading",
|
|
64209
|
+
"children": [
|
|
64210
|
+
{
|
|
64211
|
+
"id": "wrist.request.accept",
|
|
64212
|
+
"body": {
|
|
64213
|
+
"package": "himalaya",
|
|
64214
|
+
"type": "Button",
|
|
64215
|
+
"props": {
|
|
64216
|
+
"title": "Accept",
|
|
64217
|
+
"style": "primary",
|
|
64218
|
+
"fullWidth": true,
|
|
64219
|
+
"action": {
|
|
64220
|
+
"actionId": "tier5.ownerWrist.confirm",
|
|
64221
|
+
"params": {
|
|
64222
|
+
"bookingId": "$service:ownerWrist.current.bookingId",
|
|
64223
|
+
"siteId": "$service:ownerWrist.siteId"
|
|
64224
|
+
}
|
|
64225
|
+
}
|
|
64226
|
+
}
|
|
64227
|
+
}
|
|
64228
|
+
},
|
|
64229
|
+
{
|
|
64230
|
+
"id": "wrist.request.decline",
|
|
64231
|
+
"body": {
|
|
64232
|
+
"package": "himalaya",
|
|
64233
|
+
"type": "Button",
|
|
64234
|
+
"props": {
|
|
64235
|
+
"title": "Decline",
|
|
64236
|
+
"style": "secondary",
|
|
64237
|
+
"role": "destructive",
|
|
64238
|
+
"fullWidth": true,
|
|
64239
|
+
"action": {
|
|
64240
|
+
"actionId": "tier5.ownerWrist.askDecline"
|
|
64241
|
+
}
|
|
64242
|
+
}
|
|
64243
|
+
}
|
|
64244
|
+
}
|
|
64245
|
+
]
|
|
64246
|
+
}
|
|
64247
|
+
},
|
|
64248
|
+
"modifiers": {
|
|
64249
|
+
"hiddenPath": "$service:ownerWrist.confirmingDecline"
|
|
64250
|
+
}
|
|
64251
|
+
},
|
|
64252
|
+
{
|
|
64253
|
+
"id": "",
|
|
64254
|
+
"body": {
|
|
64255
|
+
"package": "himalaya",
|
|
64256
|
+
"type": "VStack",
|
|
64257
|
+
"props": {
|
|
64258
|
+
"spacing": 6,
|
|
64259
|
+
"alignment": "leading",
|
|
64260
|
+
"children": [
|
|
64261
|
+
{
|
|
64262
|
+
"id": "wrist.request.confirm.prompt",
|
|
64263
|
+
"body": {
|
|
64264
|
+
"package": "himalaya",
|
|
64265
|
+
"type": "Text",
|
|
64266
|
+
"props": {
|
|
64267
|
+
"text": "Decline this request?",
|
|
64268
|
+
"style": "footnote"
|
|
64269
|
+
}
|
|
64270
|
+
}
|
|
64271
|
+
},
|
|
64272
|
+
{
|
|
64273
|
+
"id": "wrist.request.confirm.decline",
|
|
64274
|
+
"body": {
|
|
64275
|
+
"package": "himalaya",
|
|
64276
|
+
"type": "Button",
|
|
64277
|
+
"props": {
|
|
64278
|
+
"title": "Decline",
|
|
64279
|
+
"style": "primary",
|
|
64280
|
+
"role": "destructive",
|
|
64281
|
+
"fullWidth": true,
|
|
64282
|
+
"action": {
|
|
64283
|
+
"actionId": "tier5.ownerWrist.decline",
|
|
64284
|
+
"params": {
|
|
64285
|
+
"bookingId": "$service:ownerWrist.current.bookingId",
|
|
64286
|
+
"siteId": "$service:ownerWrist.siteId"
|
|
64287
|
+
}
|
|
64288
|
+
}
|
|
64289
|
+
}
|
|
64290
|
+
}
|
|
64291
|
+
},
|
|
64292
|
+
{
|
|
64293
|
+
"id": "wrist.request.confirm.keep",
|
|
64294
|
+
"body": {
|
|
64295
|
+
"package": "himalaya",
|
|
64296
|
+
"type": "Button",
|
|
64297
|
+
"props": {
|
|
64298
|
+
"title": "Keep",
|
|
64299
|
+
"style": "secondary",
|
|
64300
|
+
"fullWidth": true,
|
|
64301
|
+
"action": {
|
|
64302
|
+
"actionId": "tier5.ownerWrist.cancelDecline"
|
|
64303
|
+
}
|
|
64304
|
+
}
|
|
64305
|
+
}
|
|
64306
|
+
}
|
|
64307
|
+
]
|
|
64308
|
+
}
|
|
64309
|
+
},
|
|
64310
|
+
"modifiers": {
|
|
64311
|
+
"hiddenPath": "$service:ownerWrist.notConfirmingDecline"
|
|
64312
|
+
}
|
|
64313
|
+
},
|
|
64314
|
+
{
|
|
64315
|
+
"id": "wrist.request.back",
|
|
64316
|
+
"body": {
|
|
64317
|
+
"package": "himalaya",
|
|
64318
|
+
"type": "Button",
|
|
64319
|
+
"props": {
|
|
64320
|
+
"title": "Back",
|
|
64321
|
+
"style": "plain",
|
|
64322
|
+
"fullWidth": true,
|
|
64323
|
+
"action": {
|
|
64324
|
+
"actionId": "companion.ownerLite.backHome"
|
|
64325
|
+
}
|
|
64326
|
+
}
|
|
64327
|
+
}
|
|
64328
|
+
}
|
|
64329
|
+
]
|
|
64330
|
+
}
|
|
64331
|
+
},
|
|
64332
|
+
"modifiers": {
|
|
64333
|
+
"padding": {
|
|
64334
|
+
"leading": 6,
|
|
64335
|
+
"trailing": 6,
|
|
64336
|
+
"top": 4,
|
|
64337
|
+
"bottom": 8
|
|
64338
|
+
}
|
|
64339
|
+
}
|
|
64340
|
+
},
|
|
64341
|
+
"logicBundle": {
|
|
64342
|
+
"url": "http://localhost:8190/v1/bundles/himi-owner-lite-wrist",
|
|
64343
|
+
"integrity": "",
|
|
64344
|
+
"contentType": "application/javascript+ts-bundle",
|
|
64345
|
+
"declaredCapabilities": [
|
|
64346
|
+
"wix_api"
|
|
64347
|
+
],
|
|
64348
|
+
"minBinaryVersion": "0.1.0",
|
|
64349
|
+
"bundleVersion": "0.0.1"
|
|
64350
|
+
}
|
|
64351
|
+
},
|
|
63812
64352
|
"himi_owner_lite_products": {
|
|
63813
64353
|
"screenId": "himi_owner_lite_products",
|
|
63814
64354
|
"renderer": "sdui_intent",
|
|
@@ -171,6 +171,12 @@
|
|
|
171
171
|
},
|
|
172
172
|
"himi_owner_lite_sites": {
|
|
173
173
|
"displayName": "Sites"
|
|
174
|
+
},
|
|
175
|
+
"himi_owner_lite_wrist_home": {
|
|
176
|
+
"displayName": "Next up"
|
|
177
|
+
},
|
|
178
|
+
"himi_owner_lite_wrist_request": {
|
|
179
|
+
"displayName": "Booking requests"
|
|
174
180
|
}
|
|
175
181
|
},
|
|
176
182
|
"icon": "icon.png",
|