@wix/himalaya-cli 0.1403.0 → 0.1405.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 -0
- package/dist/authoring-runtime/node_modules/@wix/himalaya/dist/_types/core/ts/src/schema.d.ts +6 -0
- package/dist/authoring-runtime/node_modules/@wix/himalaya/dist/_types/stdlib/wix-sdk/ai-site-chat/src/extensions.d.ts +10 -0
- package/dist/authoring-runtime/node_modules/@wix/himalaya/dist/_types/stdlib/wix-sdk/ai-site-chat/src/index.d.ts +102 -0
- package/dist/authoring-runtime/node_modules/@wix/himalaya/dist/_types/stdlib/wix-sdk/chat-web/src/index.d.ts +115 -21
- package/dist/authoring-runtime/node_modules/@wix/himalaya/dist/wix-ai-site-chat.mjs +70 -0
- package/dist/authoring-runtime/node_modules/@wix/himalaya/dist/wix-chat-web.mjs +207 -38
- package/dist/authoring-runtime/node_modules/@wix/himalaya/package.json +4 -0
- package/dist/cli.mjs +95 -38
- package/dist/preview-assets.generated.bin +0 -0
- package/fixtures/wix-canned.json +3 -0
- package/guides/component-reference.json +3 -2
- package/guides/component-reference.md +7 -1
- package/guides/importable-sdks.md +1 -0
- package/guides/sdk-reference.json +217 -14
- package/package.json +2 -2
- package/templates/beauty-salon/config.ts +7 -0
- package/templates/beauty-salon/dev/index.ts +1750 -0
- package/templates/beauty-salon/himalaya.content.json +3 -0
- package/templates/beauty-salon/site-functions/README.md +37 -0
- package/templates/beauty-salon/site-functions/himiMemberPhotoUploadUrl.js +90 -0
- package/templates/beauty-salon/tier5-src/_shared/member-account-routes.ts +11 -3
- package/templates/beauty-salon/tier5-src/himi-branded-lite-account-settings/blocked-members.ts +242 -0
- package/templates/beauty-salon/tier5-src/himi-branded-lite-account-settings/index.ts +1091 -0
- package/templates/branded-lite/config.ts +7 -0
- package/templates/branded-lite/dev/index.ts +1750 -0
- package/templates/branded-lite/himalaya.content.json +3 -0
- package/templates/branded-lite/site-functions/README.md +37 -0
- package/templates/branded-lite/site-functions/himiMemberPhotoUploadUrl.js +90 -0
- package/templates/branded-lite/tier5-src/_shared/member-account-routes.ts +11 -3
- package/templates/branded-lite/tier5-src/himi-branded-lite-account-settings/blocked-members.ts +242 -0
- package/templates/branded-lite/tier5-src/himi-branded-lite-account-settings/index.ts +1091 -0
- package/templates/branded-lite/tier5-src/wix-spaces-chat-thread/index.ts +2 -2
- package/templates/community-club/config.ts +7 -0
- package/templates/community-club/dev/index.ts +1750 -0
- package/templates/community-club/himalaya.content.json +3 -0
- package/templates/community-club/site-functions/README.md +37 -0
- package/templates/community-club/site-functions/himiMemberPhotoUploadUrl.js +90 -0
- package/templates/community-club/tier5-src/_shared/member-account-routes.ts +11 -3
- package/templates/community-club/tier5-src/himi-branded-lite-account-settings/blocked-members.ts +242 -0
- package/templates/community-club/tier5-src/himi-branded-lite-account-settings/index.ts +1091 -0
- package/templates/events-meetups/config.ts +7 -0
- package/templates/events-meetups/dev/index.ts +1750 -0
- package/templates/events-meetups/himalaya.content.json +3 -0
- package/templates/events-meetups/site-functions/README.md +37 -0
- package/templates/events-meetups/site-functions/himiMemberPhotoUploadUrl.js +90 -0
- package/templates/events-meetups/tier5-src/_shared/member-account-routes.ts +11 -3
- package/templates/events-meetups/tier5-src/himi-branded-lite-account-settings/blocked-members.ts +242 -0
- package/templates/events-meetups/tier5-src/himi-branded-lite-account-settings/index.ts +1091 -0
- package/templates/gym-fitness/config.ts +7 -0
- package/templates/gym-fitness/dev/index.ts +1750 -0
- package/templates/gym-fitness/himalaya.content.json +3 -0
- package/templates/gym-fitness/site-functions/README.md +37 -0
- package/templates/gym-fitness/site-functions/himiMemberPhotoUploadUrl.js +90 -0
- package/templates/gym-fitness/tier5-src/_shared/member-account-routes.ts +11 -3
- package/templates/gym-fitness/tier5-src/himi-branded-lite-account-settings/blocked-members.ts +242 -0
- package/templates/gym-fitness/tier5-src/himi-branded-lite-account-settings/index.ts +1091 -0
- package/templates/nonprofit-cause/config.ts +7 -0
- package/templates/nonprofit-cause/dev/index.ts +1750 -0
- package/templates/nonprofit-cause/himalaya.content.json +3 -0
- package/templates/nonprofit-cause/site-functions/README.md +37 -0
- package/templates/nonprofit-cause/site-functions/himiMemberPhotoUploadUrl.js +90 -0
- package/templates/nonprofit-cause/tier5-src/_shared/member-account-routes.ts +11 -3
- package/templates/nonprofit-cause/tier5-src/himi-branded-lite-account-settings/blocked-members.ts +242 -0
- package/templates/nonprofit-cause/tier5-src/himi-branded-lite-account-settings/index.ts +1091 -0
- package/templates/podcast-creator/config.ts +7 -0
- package/templates/podcast-creator/dev/index.ts +1750 -0
- package/templates/podcast-creator/himalaya.content.json +3 -0
- package/templates/podcast-creator/site-functions/README.md +37 -0
- package/templates/podcast-creator/site-functions/himiMemberPhotoUploadUrl.js +90 -0
- package/templates/podcast-creator/tier5-src/_shared/member-account-routes.ts +11 -3
- package/templates/podcast-creator/tier5-src/himi-branded-lite-account-settings/blocked-members.ts +242 -0
- package/templates/podcast-creator/tier5-src/himi-branded-lite-account-settings/index.ts +1091 -0
- package/templates/portfolio-creative/config.ts +7 -0
- package/templates/portfolio-creative/dev/index.ts +1750 -0
- package/templates/portfolio-creative/himalaya.content.json +3 -0
- package/templates/portfolio-creative/site-functions/README.md +37 -0
- package/templates/portfolio-creative/site-functions/himiMemberPhotoUploadUrl.js +90 -0
- package/templates/portfolio-creative/tier5-src/_shared/member-account-routes.ts +11 -3
- package/templates/portfolio-creative/tier5-src/himi-branded-lite-account-settings/blocked-members.ts +242 -0
- package/templates/portfolio-creative/tier5-src/himi-branded-lite-account-settings/index.ts +1091 -0
- package/templates/restaurant/config.ts +7 -0
- package/templates/restaurant/dev/index.ts +1750 -0
- package/templates/restaurant/himalaya.content.json +3 -0
- package/templates/restaurant/site-functions/README.md +37 -0
- package/templates/restaurant/site-functions/himiMemberPhotoUploadUrl.js +90 -0
- package/templates/restaurant/tier5-src/_shared/member-account-routes.ts +11 -3
- package/templates/restaurant/tier5-src/himi-branded-lite-account-settings/blocked-members.ts +242 -0
- package/templates/restaurant/tier5-src/himi-branded-lite-account-settings/index.ts +1091 -0
- package/templates/retail-store/config.ts +7 -0
- package/templates/retail-store/dev/index.ts +1750 -0
- package/templates/retail-store/himalaya.content.json +3 -0
- package/templates/retail-store/site-functions/README.md +37 -0
- package/templates/retail-store/site-functions/himiMemberPhotoUploadUrl.js +90 -0
- package/templates/retail-store/tier5-src/_shared/member-account-routes.ts +11 -3
- package/templates/retail-store/tier5-src/himi-branded-lite-account-settings/blocked-members.ts +242 -0
- package/templates/retail-store/tier5-src/himi-branded-lite-account-settings/index.ts +1091 -0
- package/templates/yoga-studio/config.ts +7 -0
- package/templates/yoga-studio/dev/index.ts +1750 -0
- package/templates/yoga-studio/himalaya.content.json +3 -0
- package/templates/yoga-studio/site-functions/README.md +37 -0
- package/templates/yoga-studio/site-functions/himiMemberPhotoUploadUrl.js +90 -0
- package/templates/yoga-studio/tier5-src/_shared/member-account-routes.ts +11 -3
- package/templates/yoga-studio/tier5-src/himi-branded-lite-account-settings/blocked-members.ts +242 -0
- package/templates/yoga-studio/tier5-src/himi-branded-lite-account-settings/index.ts +1091 -0
|
@@ -1025,9 +1025,10 @@
|
|
|
1025
1025
|
"category": "Image well + Wix Media upload",
|
|
1026
1026
|
"propsType": "MediaFieldProps",
|
|
1027
1027
|
"bindings": [
|
|
1028
|
-
"valuePath"
|
|
1028
|
+
"valuePath",
|
|
1029
|
+
"fallbackTextPath"
|
|
1029
1030
|
],
|
|
1030
|
-
"propsSource": "export interface MediaFieldProps {\n /** `$service:<svc>.<path>` → the current image URL; empty ⇒ the empty well with `label`. */\n valuePath: string;\n /** The worker service exposing `genUpload` / `setMedia` and the `uploadUrl` value. */\n uploadService: string;\n /** Empty-well copy (a message key or literal). Default \"Add a photo\". */\n label?: string;\n}"
|
|
1031
|
+
"propsSource": "export interface MediaFieldProps {\n /** `$service:<svc>.<path>` → the current image URL; empty ⇒ the empty well with `label`. */\n valuePath: string;\n /** The worker service exposing `genUpload` / `setMedia` and the `uploadUrl` value. */\n uploadService: string;\n /** Empty-well copy (a message key or literal). Default \"Add a photo\". */\n label?: string;\n /** Set to \"avatar\" for a circular picker row; omitted preserves the 160pt image well. */\n presentation?: string;\n /** `$service:<svc>.<path>` → initials shown in avatar mode when no photo is set. */\n fallbackTextPath?: string;\n /** Optional visible heading in avatar mode; label remains the action caption. */\n heading?: string;\n}"
|
|
1031
1032
|
},
|
|
1032
1033
|
{
|
|
1033
1034
|
"name": "RichTextField",
|
|
@@ -94,7 +94,7 @@ See also **[Modifiers](#modifiers)** (the `modifiers` block) and **[Actions](#ac
|
|
|
94
94
|
| `DataTable` | Analytics data-viz | `rowsPath`, `totalsPath` |
|
|
95
95
|
| `RichContent` | Rich content | `documentJsonPath` |
|
|
96
96
|
| `RichContentEditor` | Rich content editor | `documentPath` |
|
|
97
|
-
| `MediaField` | Image well + Wix Media upload | `valuePath` |
|
|
97
|
+
| `MediaField` | Image well + Wix Media upload | `valuePath`, `fallbackTextPath` |
|
|
98
98
|
| `RichTextField` | Formatted multiline field | `valuePath` |
|
|
99
99
|
| `VoiceNote` | Recorded-audio bubble (messenger design G4) | `waveformPath`, `durationMsPath`, `positionMsPath`, `statePath`, `deliveryPath`, `ratePath` |
|
|
100
100
|
| `Marquee` | Recorded-audio bubble (messenger design G4) | — |
|
|
@@ -1716,6 +1716,12 @@ export interface MediaFieldProps {
|
|
|
1716
1716
|
uploadService: string;
|
|
1717
1717
|
/** Empty-well copy (a message key or literal). Default "Add a photo". */
|
|
1718
1718
|
label?: string;
|
|
1719
|
+
/** Set to "avatar" for a circular picker row; omitted preserves the 160pt image well. */
|
|
1720
|
+
presentation?: string;
|
|
1721
|
+
/** `$service:<svc>.<path>` → initials shown in avatar mode when no photo is set. */
|
|
1722
|
+
fallbackTextPath?: string;
|
|
1723
|
+
/** Optional visible heading in avatar mode; label remains the action caption. */
|
|
1724
|
+
heading?: string;
|
|
1719
1725
|
}
|
|
1720
1726
|
```
|
|
1721
1727
|
|
|
@@ -78,6 +78,7 @@ direction the platform is heading — recommended, not required). Usage is unifo
|
|
|
78
78
|
|
|
79
79
|
- `@himalaya/wix-cashier` — Tier-5 typed binding to the platform's native cashier.
|
|
80
80
|
- `@himalaya/wix-activity-counters` — Wix activity counters — typed REST client
|
|
81
|
+
- `@himalaya/wix-ai-site-chat` — Wix ai site chat — typed REST client
|
|
81
82
|
- `@himalaya/wix-analytics` — Site analytics totals
|
|
82
83
|
- `@himalaya/wix-async-jobs` — Async job status — read first-party job progress through the Wix gateway
|
|
83
84
|
- `@himalaya/wix-automations` — Wix automations — typed REST client
|
|
@@ -5458,6 +5458,113 @@
|
|
|
5458
5458
|
}
|
|
5459
5459
|
]
|
|
5460
5460
|
},
|
|
5461
|
+
{
|
|
5462
|
+
"name": "@himalaya/wix-ai-site-chat",
|
|
5463
|
+
"source": "stdlib/wix-sdk/ai-site-chat/src/index.ts",
|
|
5464
|
+
"description": "Wix ai site chat — typed REST client",
|
|
5465
|
+
"api": [
|
|
5466
|
+
{
|
|
5467
|
+
"name": "WixCallOptions",
|
|
5468
|
+
"kind": "interface",
|
|
5469
|
+
"jsdoc": "/** Per-call options. `site` addresses ONE call at a business other than the app's\n * active one, so a cross-site rollup can read several businesses concurrently without\n * `setActiveSite` moving the whole process between them. Omitted ⇒ the active business,\n * byte-identical to a call that never passed options.\n *\n * `site.forSite(msid)` from `@himalaya/wix-platform` returns a value of this shape, so\n * it can be passed straight through: `someMethod(req, site.forSite(msid))`. */",
|
|
5470
|
+
"decl": "export interface WixCallOptions {\n site?: string;\n}"
|
|
5471
|
+
},
|
|
5472
|
+
{
|
|
5473
|
+
"name": "wixCall",
|
|
5474
|
+
"kind": "function",
|
|
5475
|
+
"jsdoc": "",
|
|
5476
|
+
"decl": "export function wixCall<T>(\n method: string,\n path: string,\n body?: unknown,\n opts?: WixCallOptions,\n): Promise<T>;"
|
|
5477
|
+
},
|
|
5478
|
+
{
|
|
5479
|
+
"name": "wixQueryPath",
|
|
5480
|
+
"kind": "function",
|
|
5481
|
+
"jsdoc": "/** `path` with `req` appended as the query string Wix's RPC gateway reads a GET or\n * DELETE request from. A nested object flattens to dotted field paths\n * (`{ sort: { order: \"ASC\" } }` → `sort.order=ASC`), an array repeats its key\n * (`{ id: [\"a\", \"b\"] }` → `id=a&id=b`), and an absent field contributes nothing —\n * so an empty request yields the bare path. A field whose value is an array of\n * objects has no query-string spelling and is omitted, exactly as Wix's own client\n * omits it; such a field has to be sent through a POST sibling endpoint instead.\n *\n * Built from template literals and `encodeURIComponent`, never `URLSearchParams`:\n * that is a host global the bare Tier-5 worker runtimes (JSCore / Hermes /\n * QuickJS-ng) do not provide, so reaching for it would throw a ReferenceError\n * before the request went out rather than degrade.\n *\n * Exported so the hand-written ./extensions sidecar can build the same URLs. */",
|
|
5482
|
+
"decl": "export function wixQueryPath(path: string, req: unknown): string;"
|
|
5483
|
+
},
|
|
5484
|
+
{
|
|
5485
|
+
"name": "WixMessage",
|
|
5486
|
+
"kind": "interface",
|
|
5487
|
+
"jsdoc": "",
|
|
5488
|
+
"decl": "export interface WixMessage {\n id?: string;\n createdDate?: string;\n sender?: string;\n conversationId?: string;\n answerTo?: string;\n messageType?: string;\n body?: WixBody;\n inboxId?: string;\n visitorOptions?: string[];\n assistantActions?: string[];\n visitorOptionsFields?: Record<string, unknown>[];\n engineStatus?: string;\n}"
|
|
5489
|
+
},
|
|
5490
|
+
{
|
|
5491
|
+
"name": "WixBody",
|
|
5492
|
+
"kind": "interface",
|
|
5493
|
+
"jsdoc": "",
|
|
5494
|
+
"decl": "export interface WixBody {\n mainText?: string;\n footerText?: string;\n additionalData?: Record<string, unknown>[];\n}"
|
|
5495
|
+
},
|
|
5496
|
+
{
|
|
5497
|
+
"name": "WixListMessagesRequest",
|
|
5498
|
+
"kind": "interface",
|
|
5499
|
+
"jsdoc": "",
|
|
5500
|
+
"decl": "export interface WixListMessagesRequest {\n cursorPaging?: WixCursorPaging;\n}"
|
|
5501
|
+
},
|
|
5502
|
+
{
|
|
5503
|
+
"name": "WixCursorPaging",
|
|
5504
|
+
"kind": "interface",
|
|
5505
|
+
"jsdoc": "",
|
|
5506
|
+
"decl": "export interface WixCursorPaging {\n limit?: number;\n cursor?: string;\n}"
|
|
5507
|
+
},
|
|
5508
|
+
{
|
|
5509
|
+
"name": "WixListMessagesResponse",
|
|
5510
|
+
"kind": "interface",
|
|
5511
|
+
"jsdoc": "",
|
|
5512
|
+
"decl": "export interface WixListMessagesResponse {\n messages?: WixMessage[];\n pagingMetadata?: WixPagingMetadataV2;\n}"
|
|
5513
|
+
},
|
|
5514
|
+
{
|
|
5515
|
+
"name": "WixPagingMetadataV2",
|
|
5516
|
+
"kind": "interface",
|
|
5517
|
+
"jsdoc": "",
|
|
5518
|
+
"decl": "export interface WixPagingMetadataV2 {\n count?: number;\n offset?: number;\n total?: number;\n tooManyToCount?: boolean;\n cursors?: WixCursors;\n hasNext?: boolean;\n}"
|
|
5519
|
+
},
|
|
5520
|
+
{
|
|
5521
|
+
"name": "WixCursors",
|
|
5522
|
+
"kind": "interface",
|
|
5523
|
+
"jsdoc": "",
|
|
5524
|
+
"decl": "export interface WixCursors {\n next?: string;\n prev?: string;\n}"
|
|
5525
|
+
},
|
|
5526
|
+
{
|
|
5527
|
+
"name": "WixStreamMessagesRequest",
|
|
5528
|
+
"kind": "interface",
|
|
5529
|
+
"jsdoc": "",
|
|
5530
|
+
"decl": "export interface WixStreamMessagesRequest {\n message: WixStreamMessage;\n}"
|
|
5531
|
+
},
|
|
5532
|
+
{
|
|
5533
|
+
"name": "WixStreamMessage",
|
|
5534
|
+
"kind": "interface",
|
|
5535
|
+
"jsdoc": "",
|
|
5536
|
+
"decl": "export interface WixStreamMessage {\n sender: \"SITE_VISITOR\";\n messageType: \"VISITOR_OPTION_SELECTED\";\n answerTo: string;\n body: WixStreamMessageBody;\n}"
|
|
5537
|
+
},
|
|
5538
|
+
{
|
|
5539
|
+
"name": "WixStreamMessageBody",
|
|
5540
|
+
"kind": "interface",
|
|
5541
|
+
"jsdoc": "",
|
|
5542
|
+
"decl": "export interface WixStreamMessageBody {\n mainText: string;\n additionalData: WixStreamMessageAdditionalData[];\n}"
|
|
5543
|
+
},
|
|
5544
|
+
{
|
|
5545
|
+
"name": "WixStreamMessageAdditionalData",
|
|
5546
|
+
"kind": "interface",
|
|
5547
|
+
"jsdoc": "",
|
|
5548
|
+
"decl": "export interface WixStreamMessageAdditionalData {\n id: string;\n type: \"select_option\";\n action: string;\n}"
|
|
5549
|
+
},
|
|
5550
|
+
{
|
|
5551
|
+
"name": "listMessages",
|
|
5552
|
+
"kind": "function",
|
|
5553
|
+
"jsdoc": "/**\n * Lists the messages of the AI Site Chat (Wix Smart Chat) conversation for the active site, paged by cursor via `cursorPaging`. Runs as the site visitor or member session the host supplies; an empty `messages` array means the conversation has no messages yet, and a 4xx/5xx rejects with the gateway error.\n *\n * @scope visitor — an anonymous visitor session is enough.\n *\n * GET /wix-assistant-widget/v1/messages/list\n */",
|
|
5554
|
+
"decl": "export function listMessages(\n req: WixListMessagesRequest = {} as WixListMessagesRequest,\n opts?: WixCallOptions,\n): Promise<WixListMessagesResponse>;",
|
|
5555
|
+
"http": "GET /wix-assistant-widget/v1/messages/list",
|
|
5556
|
+
"scope": "visitor"
|
|
5557
|
+
},
|
|
5558
|
+
{
|
|
5559
|
+
"name": "streamMessages",
|
|
5560
|
+
"kind": "function",
|
|
5561
|
+
"jsdoc": "/** Submits a visitor message (for example a visitor-option selection) to the widget's\n * `messages/stream` endpoint. This is a BUFFERED call, not a stream: the endpoint\n * answers with an SSE body, but the Wix bridge reads the whole body before it resolves,\n * so the promise settles only once the response has ended and the events are not\n * delivered as they arrive. The payload is returned opaque, as the bridge hands it\n * over. Native clients expose the same buffered call as `streamMessages`. The request\n * is sent as the visitor or member session the host supplies; a gateway error rejects.\n * @scope visitor — an anonymous visitor session is enough. */",
|
|
5562
|
+
"decl": "export function streamMessages(req: WixStreamMessagesRequest, opts?: WixCallOptions): Promise<unknown>;",
|
|
5563
|
+
"http": "POST /wix-assistant-widget/v1/messages/stream",
|
|
5564
|
+
"scope": "visitor"
|
|
5565
|
+
}
|
|
5566
|
+
]
|
|
5567
|
+
},
|
|
5461
5568
|
{
|
|
5462
5569
|
"name": "@himalaya/wix-analytics",
|
|
5463
5570
|
"source": "stdlib/wix-sdk/analytics/src/index.ts",
|
|
@@ -10277,29 +10384,95 @@
|
|
|
10277
10384
|
"source": "stdlib/wix-sdk/chat-web/src/index.ts",
|
|
10278
10385
|
"description": "Web chat widget",
|
|
10279
10386
|
"api": [
|
|
10387
|
+
{
|
|
10388
|
+
"name": "ChatWebErrorCode",
|
|
10389
|
+
"kind": "type",
|
|
10390
|
+
"jsdoc": "",
|
|
10391
|
+
"decl": "export type ChatWebErrorCode = \"token_empty\" | \"token_mint_failed\" | \"invalid_argument\" | \"invalid_response\";"
|
|
10392
|
+
},
|
|
10393
|
+
{
|
|
10394
|
+
"name": "ChatWebError",
|
|
10395
|
+
"kind": "interface",
|
|
10396
|
+
"jsdoc": "/** Typed failure so callers can tell \"no token / bad input / bad response\" from\n * an empty inbox.\n *\n * A tagged Error, NOT a subclass (same pattern as `genieChatError`): Tier-5\n * bundles are built for a target that refuses `class` syntax, so this module\n * stays class-free. Test with `isChatWebError`, not `instanceof`. */",
|
|
10397
|
+
"decl": "export interface ChatWebError extends Error {\n code: ChatWebErrorCode;\n cause?: unknown;\n}"
|
|
10398
|
+
},
|
|
10399
|
+
{
|
|
10400
|
+
"name": "chatWebError",
|
|
10401
|
+
"kind": "function",
|
|
10402
|
+
"jsdoc": "/** Creates a typed error for token, validation, and malformed-response failures. */",
|
|
10403
|
+
"decl": "export function chatWebError(code: ChatWebErrorCode, message: string, cause?: unknown): ChatWebError;"
|
|
10404
|
+
},
|
|
10405
|
+
{
|
|
10406
|
+
"name": "isChatWebError",
|
|
10407
|
+
"kind": "function",
|
|
10408
|
+
"jsdoc": "/** Returns whether a value is a typed Wix chat SDK error. */",
|
|
10409
|
+
"decl": "export function isChatWebError(e: unknown): e is ChatWebError;"
|
|
10410
|
+
},
|
|
10411
|
+
{
|
|
10412
|
+
"name": "ChatRole",
|
|
10413
|
+
"kind": "type",
|
|
10414
|
+
"jsdoc": "",
|
|
10415
|
+
"decl": "export type ChatRole = \"owner\" | \"member\";"
|
|
10416
|
+
},
|
|
10417
|
+
{
|
|
10418
|
+
"name": "ChatOptions",
|
|
10419
|
+
"kind": "interface",
|
|
10420
|
+
"jsdoc": "",
|
|
10421
|
+
"decl": "export interface ChatOptions {\n /** `owner` (default) mints with isForUnifiedList=true; `member` with false. */\n role?: ChatRole;\n /** A caller-supplied chatToken; skips the mint. Never stored by this module. */\n chatToken?: string;\n}"
|
|
10422
|
+
},
|
|
10423
|
+
{
|
|
10424
|
+
"name": "ChatCursor",
|
|
10425
|
+
"kind": "type",
|
|
10426
|
+
"jsdoc": "/** Opaque server cursor. `0` is a valid cursor, so test for null/undefined only. */",
|
|
10427
|
+
"decl": "export type ChatCursor = number | string;"
|
|
10428
|
+
},
|
|
10280
10429
|
{
|
|
10281
10430
|
"name": "ChatMessage",
|
|
10282
10431
|
"kind": "interface",
|
|
10283
10432
|
"jsdoc": "",
|
|
10284
|
-
"decl": "export interface ChatMessage {\n id: string;\n summary?: string;\n createdAt?: number;\n sender?: { type?: string; userId?: string };\n senderDisplayData?: { name?: string; initials?: string; image?: { url?: string } };\n data?: Array<{ mimeType?: string; data?: { text?: string; uri?: string; thumbnailUrl?: string } }>;\n}"
|
|
10433
|
+
"decl": "export interface ChatMessage {\n id: string;\n sequence?: number;\n summary?: string;\n createdAt?: number;\n sender?: { type?: string; userId?: string };\n senderDisplayData?: { name?: string; initials?: string; image?: { url?: string } };\n data?: Array<{ mimeType?: string; data?: { text?: string; uri?: string; thumbnailUrl?: string } }>;\n}"
|
|
10434
|
+
},
|
|
10435
|
+
{
|
|
10436
|
+
"name": "ChatMessagesPage",
|
|
10437
|
+
"kind": "interface",
|
|
10438
|
+
"jsdoc": "",
|
|
10439
|
+
"decl": "export interface ChatMessagesPage {\n items: ChatMessage[];\n /** Raw server cursors: `before` pages Desc (older), `since` pages Asc (newer). */\n next?: { before?: ChatCursor | null; since?: ChatCursor | null };\n /** The cursor for the next page in the requested ordering; undefined = end. */\n nextPointer?: ChatCursor;\n}"
|
|
10440
|
+
},
|
|
10441
|
+
{
|
|
10442
|
+
"name": "GetMessagesPageParams",
|
|
10443
|
+
"kind": "interface",
|
|
10444
|
+
"jsdoc": "",
|
|
10445
|
+
"decl": "export interface GetMessagesPageParams extends ChatOptions {\n pageSize?: number;\n /** Omitted = server default (what the array helper has always sent). */\n ordering?: \"Asc\" | \"Desc\";\n nextPointer?: ChatCursor;\n}"
|
|
10446
|
+
},
|
|
10447
|
+
{
|
|
10448
|
+
"name": "getMessagesPage",
|
|
10449
|
+
"kind": "function",
|
|
10450
|
+
"jsdoc": "/** One page of history. Verified live (200) for the plain form: chat-web **v1**,\n * chatToken in the QUERY, `pageSize` required. Contract (chat-sdk 24.0.40\n * `server-api.ts:128-139`): optional `ordering=Asc|Desc` and `nextPointer`,\n * response `{items, next:{before,since}}`. */",
|
|
10451
|
+
"decl": "export async function getMessagesPage(chatroomId: string, params: GetMessagesPageParams = {}): Promise<ChatMessagesPage>;"
|
|
10285
10452
|
},
|
|
10286
10453
|
{
|
|
10287
10454
|
"name": "getMessages",
|
|
10288
10455
|
"kind": "function",
|
|
10289
|
-
"jsdoc": "/** Fetch the recent messages for a chatroom
|
|
10290
|
-
"decl": "export async function getMessages(chatroomId: string, pageSize = 30): Promise<ChatMessage[]>;"
|
|
10456
|
+
"jsdoc": "/** Fetch the recent messages for a chatroom (first page of `getMessagesPage`). */",
|
|
10457
|
+
"decl": "export async function getMessages(chatroomId: string, pageSize = 30, options: ChatOptions = {}): Promise<ChatMessage[]>;"
|
|
10458
|
+
},
|
|
10459
|
+
{
|
|
10460
|
+
"name": "SendChatMessageOptions",
|
|
10461
|
+
"kind": "interface",
|
|
10462
|
+
"jsdoc": "",
|
|
10463
|
+
"decl": "export interface SendChatMessageOptions extends ChatOptions {\n /** Caller-owned message id: the same id on a user retry is the same send\n * intent. Generated when omitted. */\n messageId?: string;\n}"
|
|
10291
10464
|
},
|
|
10292
10465
|
{
|
|
10293
10466
|
"name": "sendChatMessage",
|
|
10294
10467
|
"kind": "function",
|
|
10295
|
-
"jsdoc": "/** Send a plain-text message to a chatroom. Verified live (200): the body is\n * SendMessageRequest{sendMessageBody:{...,data:[{mimeType:\"text/plain\",data:{text}}]}}\n * with the chatToken in the `ChatToken` HEADER (query param is rejected)
|
|
10296
|
-
"decl": "export async function sendChatMessage(chatroomId: string, text: string): Promise<void>;"
|
|
10468
|
+
"jsdoc": "/** Send a plain-text message to a chatroom. Verified live (200): the body is\n * SendMessageRequest{sendMessageBody:{...,data:[{mimeType:\"text/plain\",data:{text}}]}}\n * with the chatToken in the `ChatToken` HEADER (query param is rejected).\n * The send is issued exactly once — this module never retries it; a caller\n * that retries should pass the same `messageId`. */",
|
|
10469
|
+
"decl": "export async function sendChatMessage(chatroomId: string, text: string, options: SendChatMessageOptions = {}): Promise<void>;"
|
|
10297
10470
|
},
|
|
10298
10471
|
{
|
|
10299
10472
|
"name": "archiveChatroom",
|
|
10300
10473
|
"kind": "function",
|
|
10301
10474
|
"jsdoc": "/** Archive (or unarchive) a chatroom. Verified live (200): chat-web **v1**,\n * `PUT .../chatrooms/{id}/archive|unarchive` with the chatToken in the QUERY.\n * Used by the inbox swipe action. */",
|
|
10302
|
-
"decl": "export async function archiveChatroom(chatroomId: string, archived = true): Promise<void>;"
|
|
10475
|
+
"decl": "export async function archiveChatroom(chatroomId: string, archived = true, options: ChatOptions = {}): Promise<void>;"
|
|
10303
10476
|
},
|
|
10304
10477
|
{
|
|
10305
10478
|
"name": "ChatMessagePreview",
|
|
@@ -10311,31 +10484,61 @@
|
|
|
10311
10484
|
"name": "Chatroom",
|
|
10312
10485
|
"kind": "interface",
|
|
10313
10486
|
"jsdoc": "",
|
|
10314
|
-
"decl": "export interface Chatroom {\n id: string;\n unreadCount?: number;\n isArchived?: boolean;\n createdAt?: number;\n participantId?: string;\n displayData?: { name?: string; image?: { url?: string } };\n lastMessage?: ChatMessagePreview;\n}"
|
|
10487
|
+
"decl": "export interface Chatroom {\n id: string;\n unreadCount?: number;\n isArchived?: boolean;\n createdAt?: number;\n participantId?: string;\n lastReadMessageSequence?: number;\n displayData?: { name?: string; image?: { url?: string } };\n lastMessage?: ChatMessagePreview;\n}"
|
|
10315
10488
|
},
|
|
10316
10489
|
{
|
|
10317
10490
|
"name": "getChatToken",
|
|
10318
10491
|
"kind": "function",
|
|
10319
|
-
"jsdoc": "/** Mint a chatToken (required by every chat-web call).
|
|
10320
|
-
"decl": "export async function getChatToken(): Promise<{ chatToken: string }>;"
|
|
10492
|
+
"jsdoc": "/** Mint a chatToken (required by every chat-web call). Tries the mint exactly\n * `TOKEN_MINT_ATTEMPTS` times: the token endpoint occasionally returns a\n * transient 5xx / empty body on a cold worker. If every attempt throws or\n * returns no token this THROWS a typed `chatWebError` (`token_mint_failed` with\n * the last thrown cause if any attempt threw, else `token_empty`) — it never returns an empty\n * token, so callers cannot render a false \"No messages yet\". A caller-supplied\n * `options.chatToken` is returned as is (no network). */",
|
|
10493
|
+
"decl": "export async function getChatToken(options: ChatOptions = {}): Promise<{ chatToken: string }>;"
|
|
10321
10494
|
},
|
|
10322
10495
|
{
|
|
10323
10496
|
"name": "listChatrooms",
|
|
10324
10497
|
"kind": "function",
|
|
10325
|
-
"jsdoc": "/** List the site's inbox chatrooms (conversations). Mints a chatToken first. */",
|
|
10326
|
-
"decl": "export async function listChatrooms(pageSize = 20): Promise<Chatroom[]>;"
|
|
10498
|
+
"jsdoc": "/** List the site's inbox chatrooms (conversations). Mints a chatToken first.\n * The v2 GET below is the owner (unified-list) endpoint; a member list is the v1\n * list view, so `role: \"member\"` is served by `listChatroomsPage` (first page). */",
|
|
10499
|
+
"decl": "export async function listChatrooms(pageSize = 20, options: ChatOptions = {}): Promise<Chatroom[]>;"
|
|
10500
|
+
},
|
|
10501
|
+
{
|
|
10502
|
+
"name": "ParticipantType",
|
|
10503
|
+
"kind": "type",
|
|
10504
|
+
"jsdoc": "",
|
|
10505
|
+
"decl": "export type ParticipantType = \"business\" | \"siteMember\";"
|
|
10506
|
+
},
|
|
10507
|
+
{
|
|
10508
|
+
"name": "ChatroomsPage",
|
|
10509
|
+
"kind": "interface",
|
|
10510
|
+
"jsdoc": "",
|
|
10511
|
+
"decl": "export interface ChatroomsPage {\n items: Chatroom[];\n /** Cursor for the next page (`chatrooms.next.before`); undefined = end. */\n nextPointer?: ChatCursor;\n unreadChatroomCount?: number;\n unreadChatroomIds?: string[];\n}"
|
|
10512
|
+
},
|
|
10513
|
+
{
|
|
10514
|
+
"name": "ListChatroomsPageParams",
|
|
10515
|
+
"kind": "interface",
|
|
10516
|
+
"jsdoc": "",
|
|
10517
|
+
"decl": "export interface ListChatroomsPageParams extends ChatOptions {\n /** Optional participant filter; default and `[]` = no filter (the reference\n * allows it: with an `isForUnifiedList=false` chatToken the server scopes the\n * list itself). Elements, when present, must be non-empty strings. */\n participantIds?: string[];\n participantType?: ParticipantType;\n pageSize?: number;\n nextPointer?: ChatCursor;\n archived?: boolean;\n onlyUnread?: boolean;\n unreadChatroomLimit?: number;\n}"
|
|
10518
|
+
},
|
|
10519
|
+
{
|
|
10520
|
+
"name": "listChatroomsPage",
|
|
10521
|
+
"kind": "function",
|
|
10522
|
+
"jsdoc": "/** One page of the v1 list view (the member list). Contract (chat-sdk 24.0.40\n * `server-api.ts:107-125`): `POST v1/chatrooms-for-list-view[/{participantType}]`,\n * chatToken + paging in the query, body `{participantIds, labelIds}` (`participantIds` may be `[]`), response\n * `{chatrooms:{items,next:{before}}, unreadChatroomCount, unreadChatroomIds}`.\n * Not yet live-verified for a member session. */",
|
|
10523
|
+
"decl": "export async function listChatroomsPage(params: ListChatroomsPageParams = {}): Promise<ChatroomsPage>;"
|
|
10524
|
+
},
|
|
10525
|
+
{
|
|
10526
|
+
"name": "markChatroomRead",
|
|
10527
|
+
"kind": "function",
|
|
10528
|
+
"jsdoc": "/** Mark ONE chatroom read up to a message sequence. Contract (chat-sdk 24.0.40\n * `server-api.ts:268-281`): `PUT v1/chatrooms/{id}/users` body\n * `{lastReadMessageSequence, readMethod?}` → `{lastReadMessageSequence}`\n * (the old `/read` variants 404 — that is a different path). `readMethod` names\n * the channel, e.g. `WixMembersMobileApp` in the member reference apps.\n * Not yet live-verified. */",
|
|
10529
|
+
"decl": "export async function markChatroomRead(\n chatroomId: string,\n lastReadMessageSequence: number,\n options: ChatOptions & { readMethod?: string } = {},\n): Promise<{ lastReadMessageSequence?: number }>;"
|
|
10327
10530
|
},
|
|
10328
10531
|
{
|
|
10329
10532
|
"name": "markChatroomUnread",
|
|
10330
10533
|
"kind": "function",
|
|
10331
|
-
"jsdoc": "/** Mark a chatroom UNREAD. Verified live (200): chat-web **v1**,\n * `PUT .../chatrooms/{id}/unread?chatToken=<t>` → `{hasRead, unreadChatroomCount}`.\n *
|
|
10332
|
-
"decl": "export async function markChatroomUnread(chatroomId: string): Promise<void>;"
|
|
10534
|
+
"jsdoc": "/** Mark a chatroom UNREAD. Verified live (200) with an empty body: chat-web **v1**,\n * `PUT .../chatrooms/{id}/unread?chatToken=<t>` → `{hasRead, unreadChatroomCount}`.\n * The reference sends `{lastReadMessageSequence}` = newest unreadable message\n * sequence − 1 (`server-api.ts:283-287`); pass it as `lastReadMessageSequence`.\n * Omitted = the legacy empty body, so existing callers are unchanged. Used by the\n * inbox \"Mark as unread\" swipe. */",
|
|
10535
|
+
"decl": "export async function markChatroomUnread(\n chatroomId: string,\n lastReadMessageSequence?: number,\n options: ChatOptions = {},\n): Promise<void>;"
|
|
10333
10536
|
},
|
|
10334
10537
|
{
|
|
10335
10538
|
"name": "deleteChatroom",
|
|
10336
10539
|
"kind": "function",
|
|
10337
10540
|
"jsdoc": "/** Delete a chatroom entirely. Verified live (200): chat-web **v1**,\n * `DELETE .../chatrooms/{id}?chatToken=<t>`. Used by the inbox \"Delete\" swipe\n * (distinct from Archive, which is reversible). */",
|
|
10338
|
-
"decl": "export async function deleteChatroom(chatroomId: string): Promise<void>;"
|
|
10541
|
+
"decl": "export async function deleteChatroom(chatroomId: string, options: ChatOptions = {}): Promise<void>;"
|
|
10339
10542
|
},
|
|
10340
10543
|
{
|
|
10341
10544
|
"name": "SocialChatroom",
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@wix/himalaya-cli",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.1405.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": "0a22f58e5c6c241689ced19f73766e414c3004bb061a6c6b8f738a92"
|
|
75
75
|
}
|
|
@@ -65,6 +65,13 @@ export default defineApp({
|
|
|
65
65
|
"parentScreenId": "himi_account",
|
|
66
66
|
"tabId": "profile"
|
|
67
67
|
},
|
|
68
|
+
{
|
|
69
|
+
"screenId": "himi_account_settings",
|
|
70
|
+
"isPublic": false,
|
|
71
|
+
"paramKeys": [],
|
|
72
|
+
"parentScreenId": "himi_account",
|
|
73
|
+
"tabId": "profile"
|
|
74
|
+
},
|
|
68
75
|
{
|
|
69
76
|
"screenId": "himi_view_profile",
|
|
70
77
|
"isPublic": false,
|