@wix/himalaya-cli 0.1560.0 → 0.1561.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/core/dev-server/src/builder.d.ts +3 -1
- package/dist/authoring-runtime/node_modules/@wix/himalaya/dist/_types/core/ts/src/schema.d.ts +2 -0
- package/dist/authoring-runtime/node_modules/@wix/himalaya/dist/_types/stdlib/wix-sdk/events/src/index.d.ts +60 -7
- package/dist/authoring-runtime/node_modules/@wix/himalaya/dist/wix-events.mjs +11 -5
- package/dist/cli.mjs +51 -42
- package/dist/preview-assets.generated.bin +0 -0
- package/guides/component-reference.json +3 -2
- package/guides/component-reference.md +3 -1
- package/guides/sdk-reference.json +7 -7
- package/package.json +2 -2
- package/templates/beauty-salon/tier5-src/_shared/engine-intl.ts +18 -0
- package/templates/beauty-salon/tier5-src/_shared/himi-events.ts +7 -0
- package/templates/beauty-salon-owner/tier5-src/_shared/engine-intl.ts +18 -0
- package/templates/beauty-salon-owner/tier5-src/_shared/himi-events.ts +7 -0
- package/templates/branded-lite/dev/index.ts +2390 -851
- package/templates/branded-lite/himalaya.content.json +1 -1
- package/templates/branded-lite/tier5-src/_shared/engine-intl.ts +18 -0
- package/templates/branded-lite/tier5-src/_shared/himi-events.ts +7 -0
- package/templates/branded-lite/tier5-src/himi-events-detail/index.ts +803 -361
- package/templates/community-club/dev/index.ts +2387 -848
- package/templates/community-club/himalaya.content.json +1 -1
- package/templates/community-club/tier5-src/_shared/engine-intl.ts +18 -0
- package/templates/community-club/tier5-src/_shared/himi-events.ts +7 -0
- package/templates/community-club/tier5-src/himi-events-detail/index.ts +803 -361
- package/templates/community-club-owner/tier5-src/_shared/engine-intl.ts +18 -0
- package/templates/community-club-owner/tier5-src/_shared/himi-events.ts +7 -0
- package/templates/events-meetups/dev/index.ts +2387 -848
- package/templates/events-meetups/himalaya.content.json +1 -1
- package/templates/events-meetups/tier5-src/_shared/engine-intl.ts +18 -0
- package/templates/events-meetups/tier5-src/_shared/himi-events.ts +7 -0
- package/templates/events-meetups/tier5-src/himi-events-detail/index.ts +803 -361
- package/templates/events-meetups-owner/tier5-src/_shared/engine-intl.ts +18 -0
- package/templates/events-meetups-owner/tier5-src/_shared/himi-events.ts +7 -0
- package/templates/gym-fitness/dev/index.ts +2392 -853
- package/templates/gym-fitness/himalaya.content.json +1 -1
- package/templates/gym-fitness/tier5-src/_shared/engine-intl.ts +18 -0
- package/templates/gym-fitness/tier5-src/_shared/himi-events.ts +7 -0
- package/templates/gym-fitness/tier5-src/himi-events-detail/index.ts +803 -361
- package/templates/gym-fitness-owner/tier5-src/_shared/engine-intl.ts +18 -0
- package/templates/gym-fitness-owner/tier5-src/_shared/himi-events.ts +7 -0
- package/templates/nonprofit-cause/dev/index.ts +2387 -848
- package/templates/nonprofit-cause/himalaya.content.json +1 -1
- package/templates/nonprofit-cause/tier5-src/_shared/engine-intl.ts +18 -0
- package/templates/nonprofit-cause/tier5-src/_shared/himi-events.ts +7 -0
- package/templates/nonprofit-cause/tier5-src/himi-events-detail/index.ts +803 -361
- package/templates/nonprofit-cause-owner/tier5-src/_shared/engine-intl.ts +18 -0
- package/templates/nonprofit-cause-owner/tier5-src/_shared/himi-events.ts +7 -0
- package/templates/owner-lite/tier5-src/_shared/engine-intl.ts +18 -0
- package/templates/owner-lite/tier5-src/_shared/himi-events.ts +7 -0
- package/templates/podcast-creator/dev/index.ts +2388 -849
- package/templates/podcast-creator/himalaya.content.json +1 -1
- package/templates/podcast-creator/tier5-src/_shared/engine-intl.ts +18 -0
- package/templates/podcast-creator/tier5-src/_shared/himi-events.ts +7 -0
- package/templates/podcast-creator/tier5-src/himi-events-detail/index.ts +803 -361
- package/templates/podcast-creator-owner/tier5-src/_shared/engine-intl.ts +18 -0
- package/templates/podcast-creator-owner/tier5-src/_shared/himi-events.ts +7 -0
- package/templates/portfolio-creative/dev/index.ts +2375 -836
- package/templates/portfolio-creative/himalaya.content.json +1 -1
- package/templates/portfolio-creative/tier5-src/_shared/engine-intl.ts +18 -0
- package/templates/portfolio-creative/tier5-src/_shared/himi-events.ts +7 -0
- package/templates/portfolio-creative/tier5-src/himi-events-detail/index.ts +803 -361
- package/templates/portfolio-creative-owner/tier5-src/_shared/engine-intl.ts +18 -0
- package/templates/portfolio-creative-owner/tier5-src/_shared/himi-events.ts +7 -0
- package/templates/restaurant/dev/index.ts +2388 -849
- package/templates/restaurant/himalaya.content.json +1 -1
- package/templates/restaurant/tier5-src/_shared/engine-intl.ts +18 -0
- package/templates/restaurant/tier5-src/_shared/himi-events.ts +7 -0
- package/templates/restaurant/tier5-src/himi-events-detail/index.ts +803 -361
- package/templates/restaurant-owner/tier5-src/_shared/engine-intl.ts +18 -0
- package/templates/restaurant-owner/tier5-src/_shared/himi-events.ts +7 -0
- package/templates/retail-store/tier5-src/_shared/engine-intl.ts +18 -0
- package/templates/retail-store/tier5-src/_shared/himi-events.ts +7 -0
- package/templates/retail-store-owner/tier5-src/_shared/engine-intl.ts +18 -0
- package/templates/retail-store-owner/tier5-src/_shared/himi-events.ts +7 -0
- package/templates/yoga-studio/dev/index.ts +2403 -864
- package/templates/yoga-studio/himalaya.content.json +1 -1
- package/templates/yoga-studio/tier5-src/_shared/engine-intl.ts +18 -0
- package/templates/yoga-studio/tier5-src/_shared/himi-events.ts +7 -0
- package/templates/yoga-studio/tier5-src/himi-events-detail/index.ts +803 -361
- package/templates/yoga-studio-owner/tier5-src/_shared/engine-intl.ts +18 -0
- package/templates/yoga-studio-owner/tier5-src/_shared/himi-events.ts +7 -0
|
@@ -18428,7 +18428,7 @@
|
|
|
18428
18428
|
"name": "WixEventFieldset",
|
|
18429
18429
|
"kind": "type",
|
|
18430
18430
|
"jsdoc": "/** Events v3 response fieldsets (`RequestedFields`). A bare read returns the base fieldset;\n * each value adds fields: `DETAILS` → `shortDescription`, `mainImage`, `calendarUrls`;\n * `TEXTS` → the Ricos `description`; `REGISTRATION` → `registration`; `URLS` → `eventPageUrl`;\n * `FORM` → `form`, the published registration controls and inputs. */",
|
|
18431
|
-
"decl": "export type WixEventFieldset = \"DETAILS\" | \"TEXTS\" | \"REGISTRATION\" | \"URLS\" | \"FORM\";"
|
|
18431
|
+
"decl": "export type WixEventFieldset = \"DETAILS\" | \"TEXTS\" | \"REGISTRATION\" | \"URLS\" | \"FORM\" | \"AGENDA\";"
|
|
18432
18432
|
},
|
|
18433
18433
|
{
|
|
18434
18434
|
"name": "WixEventRichContent",
|
|
@@ -18439,7 +18439,7 @@
|
|
|
18439
18439
|
{
|
|
18440
18440
|
"name": "getEvent",
|
|
18441
18441
|
"kind": "function",
|
|
18442
|
-
"jsdoc": "/** Get one event — GET /events/v3/events/{eventId}. Response wraps as `{ event }`.\n *
|
|
18442
|
+
"jsdoc": "/** Get one event — GET /events/v3/events/{eventId}. Response wraps as `{ event }`.\n * This GET returns the Events v3 BASE fieldset, which is slimmer than `queryEvents`;\n * fields such as `registration` and `calendarUrls` are absent from a bare `getEvent`.\n * Use `opts.fields` to request fieldsets such as `DETAILS`, `TEXTS`, `REGISTRATION`,\n * `URLS`, `FORM`, and `AGENDA` when a one-event read needs them. */",
|
|
18443
18443
|
"decl": "export async function getEvent(eventId: string, opts: { fields?: WixEventFieldset[] } = {}, readOptions?: WixCallOptions): Promise<WixGetEventResponse>;",
|
|
18444
18444
|
"http": "GET /events/v3/events/{…}{…}"
|
|
18445
18445
|
},
|
|
@@ -18535,7 +18535,7 @@
|
|
|
18535
18535
|
"name": "WixAvailableTicket",
|
|
18536
18536
|
"kind": "interface",
|
|
18537
18537
|
"jsdoc": "",
|
|
18538
|
-
"decl": "export interface WixAvailableTicket {\n id?: string;\n eventId?: string;\n name?: string;\n description?: string;\n price?: WixTicketPrice;\n free?: boolean;\n limitPerCheckout?: number;\n orderIndex?: number;\n saleStatus?: string;\n state?: string[];\n pricing?: { pricingType?: string; fixedPrice?: WixTicketPrice };\n dashboard?: { hidden?: boolean };\n}"
|
|
18538
|
+
"decl": "export interface WixAvailableTicket {\n id?: string;\n eventId?: string;\n name?: string;\n description?: string;\n price?: WixTicketPrice;\n free?: boolean;\n limitPerCheckout?: number;\n orderIndex?: number;\n saleStatus?: string;\n salesDetails?: { unsoldCount?: number; soldCount?: number; reservedCount?: number; soldOut?: boolean };\n salePeriod?: { startDate?: string; endDate?: string };\n state?: string[];\n pricing?: { pricingType?: string; fixedPrice?: WixTicketPrice };\n pricingOptions?: Array<{ id?: string; optionId?: string; name?: string; price?: { amount?: string; value?: string; currency?: string } }>;\n pricingMethod?: { type?: string; pricingType?: string; free?: boolean; fixedPrice?: { value?: string; currency?: string }; guestPrice?: { value?: string; currency?: string }; pricingOptions?: { optionDetails?: Array<{ id?: string; optionId?: string; name?: string; price?: { amount?: string; value?: string; currency?: string } }> } };\n policy?: string;\n policyText?: string;\n wixFeeConfig?: { type?: string };\n dashboard?: { hidden?: boolean };\n}"
|
|
18539
18539
|
},
|
|
18540
18540
|
{
|
|
18541
18541
|
"name": "WixQueryAvailableTicketsResponse",
|
|
@@ -18555,7 +18555,7 @@
|
|
|
18555
18555
|
"name": "WixTicketQuantity",
|
|
18556
18556
|
"kind": "interface",
|
|
18557
18557
|
"jsdoc": "/** One tier's ask in a reservation — `{ticketDefinitionId, quantity}`. */",
|
|
18558
|
-
"decl": "export interface WixTicketQuantity {\n ticketDefinitionId: string;\n quantity: number;\n}"
|
|
18558
|
+
"decl": "export interface WixTicketQuantity {\n ticketDefinitionId: string;\n quantity: number;\n priceOverride?: string;\n ticketDetails?: Array<{ pricingOptionId?: string }>;\n}"
|
|
18559
18559
|
},
|
|
18560
18560
|
{
|
|
18561
18561
|
"name": "WixReservationInvoice",
|
|
@@ -18590,9 +18590,9 @@
|
|
|
18590
18590
|
{
|
|
18591
18591
|
"name": "queryAvailableTickets",
|
|
18592
18592
|
"kind": "function",
|
|
18593
|
-
"jsdoc": "/** Buyer-visible ticket tiers for an event —
|
|
18594
|
-
"decl": "export function queryAvailableTickets(eventId: string, limit = 100): Promise<WixQueryAvailableTicketsResponse>;",
|
|
18595
|
-
"http": "POST /events/
|
|
18593
|
+
"jsdoc": "/** Buyer-visible ticket tiers for an event — visitor-readable Events ticket definitions v3. */",
|
|
18594
|
+
"decl": "export async function queryAvailableTickets(eventId: string, limit = 100): Promise<WixQueryAvailableTicketsResponse>;",
|
|
18595
|
+
"http": "POST /events-ticket-definitions/v3/ticket-definitions/available/query"
|
|
18596
18596
|
},
|
|
18597
18597
|
{
|
|
18598
18598
|
"name": "createTicketReservation",
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@wix/himalaya-cli",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.1561.0",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"description": "himi — the Himalaya authoring CLI. Build a Tier-5 content package on your own machine, push it to the production serve as a draft, preview it on web + Himi Player, and read worker logs back — the remote dev loop. Wraps @himalaya/serve-cli for transport.",
|
|
6
6
|
"keywords": [
|
|
@@ -71,5 +71,5 @@
|
|
|
71
71
|
"artifactId": "himalaya-cli"
|
|
72
72
|
}
|
|
73
73
|
},
|
|
74
|
-
"falconPackageHash": "
|
|
74
|
+
"falconPackageHash": "218dfa6fb52b7f6f3cd393536b9c163e3928bdf54eeb2c0020520fa5"
|
|
75
75
|
}
|
|
@@ -486,3 +486,21 @@ export function zoneOffsetAt(at: number, timeZone: string): number {
|
|
|
486
486
|
}
|
|
487
487
|
return NaN;
|
|
488
488
|
}
|
|
489
|
+
|
|
490
|
+
/** Long zone label plus its short offset, e.g. "Israel Standard Time (GMT+2)". An engine
|
|
491
|
+
* without ECMA-402 has no zone database, so callers omit the supplementary label there. */
|
|
492
|
+
export function formatTimeZoneLabel(date: Date, timeZone: string, locale = "en"): string {
|
|
493
|
+
if (hasIntl()) {
|
|
494
|
+
if (!timeZone) return "";
|
|
495
|
+
try {
|
|
496
|
+
const parts = new Intl.DateTimeFormat(locale, { timeZone, timeZoneName: "long" }).formatToParts(date);
|
|
497
|
+
const name = parts.find((part) => part.type === "timeZoneName")?.value || timeZone;
|
|
498
|
+
const offset = new Intl.DateTimeFormat(locale, { timeZone, timeZoneName: "shortOffset" })
|
|
499
|
+
.formatToParts(date).find((part) => part.type === "timeZoneName")?.value;
|
|
500
|
+
return offset ? `${name} (${offset.replace(/:00$/, "")})` : name;
|
|
501
|
+
} catch {
|
|
502
|
+
return timeZone;
|
|
503
|
+
}
|
|
504
|
+
}
|
|
505
|
+
return "";
|
|
506
|
+
}
|
|
@@ -56,3 +56,10 @@ export function rememberRsvp(eventId: string): void {
|
|
|
56
56
|
const next = [eventId, ...ids.filter((id) => id !== eventId)].slice(0, 50);
|
|
57
57
|
try { storage()?.setItem(RSVP_KEY, JSON.stringify(next)); } catch { /* best-effort */ }
|
|
58
58
|
}
|
|
59
|
+
|
|
60
|
+
/** Remove a locally confirmed RSVP after Wix confirms its cancellation. */
|
|
61
|
+
export function forgetRsvp(eventId: string): void {
|
|
62
|
+
if (!eventId) return;
|
|
63
|
+
const next = confirmedRsvpIds().filter((id) => id !== eventId);
|
|
64
|
+
try { storage()?.setItem(RSVP_KEY, JSON.stringify(next)); } catch { /* best-effort */ }
|
|
65
|
+
}
|
|
@@ -486,3 +486,21 @@ export function zoneOffsetAt(at: number, timeZone: string): number {
|
|
|
486
486
|
}
|
|
487
487
|
return NaN;
|
|
488
488
|
}
|
|
489
|
+
|
|
490
|
+
/** Long zone label plus its short offset, e.g. "Israel Standard Time (GMT+2)". An engine
|
|
491
|
+
* without ECMA-402 has no zone database, so callers omit the supplementary label there. */
|
|
492
|
+
export function formatTimeZoneLabel(date: Date, timeZone: string, locale = "en"): string {
|
|
493
|
+
if (hasIntl()) {
|
|
494
|
+
if (!timeZone) return "";
|
|
495
|
+
try {
|
|
496
|
+
const parts = new Intl.DateTimeFormat(locale, { timeZone, timeZoneName: "long" }).formatToParts(date);
|
|
497
|
+
const name = parts.find((part) => part.type === "timeZoneName")?.value || timeZone;
|
|
498
|
+
const offset = new Intl.DateTimeFormat(locale, { timeZone, timeZoneName: "shortOffset" })
|
|
499
|
+
.formatToParts(date).find((part) => part.type === "timeZoneName")?.value;
|
|
500
|
+
return offset ? `${name} (${offset.replace(/:00$/, "")})` : name;
|
|
501
|
+
} catch {
|
|
502
|
+
return timeZone;
|
|
503
|
+
}
|
|
504
|
+
}
|
|
505
|
+
return "";
|
|
506
|
+
}
|
|
@@ -56,3 +56,10 @@ export function rememberRsvp(eventId: string): void {
|
|
|
56
56
|
const next = [eventId, ...ids.filter((id) => id !== eventId)].slice(0, 50);
|
|
57
57
|
try { storage()?.setItem(RSVP_KEY, JSON.stringify(next)); } catch { /* best-effort */ }
|
|
58
58
|
}
|
|
59
|
+
|
|
60
|
+
/** Remove a locally confirmed RSVP after Wix confirms its cancellation. */
|
|
61
|
+
export function forgetRsvp(eventId: string): void {
|
|
62
|
+
if (!eventId) return;
|
|
63
|
+
const next = confirmedRsvpIds().filter((id) => id !== eventId);
|
|
64
|
+
try { storage()?.setItem(RSVP_KEY, JSON.stringify(next)); } catch { /* best-effort */ }
|
|
65
|
+
}
|