@wix/auto_sdk_ai-site-chat_widget-settings 1.0.6 → 1.0.7

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 (37) hide show
  1. package/build/cjs/index.d.ts +3 -3
  2. package/build/cjs/index.js +0 -27
  3. package/build/cjs/index.js.map +1 -1
  4. package/build/cjs/index.typings.d.ts +19 -100
  5. package/build/cjs/index.typings.js +0 -27
  6. package/build/cjs/index.typings.js.map +1 -1
  7. package/build/cjs/meta.d.ts +17 -98
  8. package/build/cjs/meta.js +0 -27
  9. package/build/cjs/meta.js.map +1 -1
  10. package/build/es/index.d.mts +3 -3
  11. package/build/es/index.mjs +0 -24
  12. package/build/es/index.mjs.map +1 -1
  13. package/build/es/index.typings.d.mts +19 -100
  14. package/build/es/index.typings.mjs +0 -24
  15. package/build/es/index.typings.mjs.map +1 -1
  16. package/build/es/meta.d.mts +17 -98
  17. package/build/es/meta.mjs +0 -24
  18. package/build/es/meta.mjs.map +1 -1
  19. package/build/internal/cjs/index.d.ts +3 -3
  20. package/build/internal/cjs/index.js +0 -27
  21. package/build/internal/cjs/index.js.map +1 -1
  22. package/build/internal/cjs/index.typings.d.ts +19 -100
  23. package/build/internal/cjs/index.typings.js +0 -27
  24. package/build/internal/cjs/index.typings.js.map +1 -1
  25. package/build/internal/cjs/meta.d.ts +17 -98
  26. package/build/internal/cjs/meta.js +0 -27
  27. package/build/internal/cjs/meta.js.map +1 -1
  28. package/build/internal/es/index.d.mts +3 -3
  29. package/build/internal/es/index.mjs +0 -24
  30. package/build/internal/es/index.mjs.map +1 -1
  31. package/build/internal/es/index.typings.d.mts +19 -100
  32. package/build/internal/es/index.typings.mjs +0 -24
  33. package/build/internal/es/index.typings.mjs.map +1 -1
  34. package/build/internal/es/meta.d.mts +17 -98
  35. package/build/internal/es/meta.mjs +0 -24
  36. package/build/internal/es/meta.mjs.map +1 -1
  37. package/package.json +3 -3
@@ -7,14 +7,9 @@ interface WidgetSettings {
7
7
  * @readonly
8
8
  */
9
9
  _id?: string | null;
10
- /**
11
- * Whether the AI Site-Chat is enabled on the site.
12
- * @deprecated Whether the AI Site-Chat is enabled on the site.
13
- * @replacedBy active_hours
14
- * @targetRemovalDate 2025-12-01
15
- */
10
+ /** Whether the AI assistant is enabled on the site. */
16
11
  enabled?: boolean;
17
- /** AI Site-Chat introduction. This is shown in the chat when a site visitor starts a new conversation. */
12
+ /** AI assistant introduction. This is shown in the chat when a site visitor starts a new conversation. */
18
13
  introMessage?: IntroMessage;
19
14
  /** Settings for the contact form. */
20
15
  contactForm?: ContactForm;
@@ -28,20 +23,20 @@ interface WidgetSettings {
28
23
  * @readonly
29
24
  */
30
25
  _updatedDate?: Date | null;
31
- /** Whether to open the AI Site-Chat automatically when the site loads. */
26
+ /** Whether to open the AI assistant automatically when the site loads. */
32
27
  autoOpen?: boolean;
33
- /** Times the AI Site-Chat is available on the site. */
28
+ /** Times the AI assistant is available on the site. */
34
29
  activeHours?: ActiveHours;
35
- /** Defines how the AI Site-Chat functions during the non-active hours. */
30
+ /** Defines how the AI assistant functions during the non-active hours. */
36
31
  offlineBehavior?: OfflineBehaviorWithLiterals;
37
- /** Whether the AI Site-Chat should send a summary of the site visitor's navigation on the site. */
32
+ /** Whether the AI assistant should send a summary of the site visitor's navigation on the site. */
38
33
  navigationSummary?: boolean | null;
39
34
  /**
40
- * Wix Media image ID used for the AI Site-Chat.
35
+ * Wix Media image ID used for the AI assistant.
41
36
  * @maxLength 500
42
37
  */
43
38
  avatar?: string | null;
44
- /** Whether to display example questions from the AI Site-Chat. */
39
+ /** Whether to display example questions from the AI assistant. */
45
40
  generatedQuestions?: boolean | null;
46
41
  }
47
42
  /** Intro message */
@@ -71,7 +66,6 @@ interface SuggestedQuestions {
71
66
  enabled?: boolean;
72
67
  /**
73
68
  * Suggested questions shown to the site visitor to help them get started.
74
- * @minSize 1
75
69
  * @maxSize 5
76
70
  */
77
71
  questions?: SettingsMessage[];
@@ -79,25 +73,17 @@ interface SuggestedQuestions {
79
73
  introduction?: SettingsMessage;
80
74
  }
81
75
  interface ContactForm {
82
- /** When the AI Site-Chat should send the contact form. */
76
+ /** When the AI assistant should send the contact form. */
83
77
  conditions?: Conditions;
84
78
  /** Contact form fields. */
85
79
  fields?: Fields;
86
- /** When to show contact form if site owner is available. */
87
- userConditions?: UserConditions;
88
80
  }
89
- /** Contact form conditions for AI Site-Chat */
81
+ /** Contact form conditions for AI assistant */
90
82
  interface Conditions {
91
- /** Whether the AI Site-Chat should send the contact form if the AI is unable to answer the site visitor's question. */
83
+ /** Whether the AI assistant should send the contact form if the AI is unable to answer the site visitor's question. */
92
84
  cannotAnswer?: boolean;
93
- /** Whether the AI Site-Chat should send the contact form if the site visitor requests to chat with a real person. */
85
+ /** Whether the AI assistant should send the contact form if the site visitor requests to chat with a real person. */
94
86
  requestForPerson?: boolean;
95
- /**
96
- * Require site visitor to fill contact form before starting a conversation.
97
- * @deprecated Require site visitor to fill contact form before starting a conversation.
98
- * @targetRemovalDate 2025-12-01
99
- */
100
- beforeChat?: boolean | null;
101
87
  }
102
88
  /** Contact form fields */
103
89
  interface Fields {
@@ -110,23 +96,9 @@ interface Fields {
110
96
  /** Whether to include a message field in the form. */
111
97
  message?: boolean;
112
98
  }
113
- /** Contact form conditions for when site owner is available */
114
- interface UserConditions {
115
- /** Show site visitor contact form before starting a conversation. */
116
- beforeChat?: boolean;
117
- /** Show site visitor contact form after their first message. */
118
- afterFirstMessage?: boolean;
119
- /** Never show site visitor contact form. */
120
- never?: boolean;
121
- }
122
99
  /** Working hours settings */
123
100
  interface ActiveHours {
124
- /**
125
- * Whether the AI Assistant is always online. If `true`, `schedule` and `timeZone` are ignored.
126
- * @deprecated Whether the AI Assistant is always online. If `true`, `schedule` and `timeZone` are ignored.
127
- * @replacedBy availability
128
- * @targetRemovalDate 2025-12-01
129
- */
101
+ /** Whether the AI Assistant is always online. If `true`, `schedule` and `timeZone` are ignored. */
130
102
  always?: boolean;
131
103
  /** Times at which the AI Assistant is online. */
132
104
  schedule?: Schedule;
@@ -135,8 +107,6 @@ interface ActiveHours {
135
107
  * @maxLength 256
136
108
  */
137
109
  timeZone?: string;
138
- /** Hours when AI assistant or site owner are available. */
139
- mode?: ChatHandlerModeWithLiterals;
140
110
  }
141
111
  /** Schedule */
142
112
  interface Schedule {
@@ -160,7 +130,7 @@ interface DaySchedule {
160
130
  /** Whether the day is enabled. */
161
131
  enabled?: boolean;
162
132
  /**
163
- * Array of times during which the AI Site-Chat or site owner are available.
133
+ * Array of times during which the AI assistant or Wix user are available to respond to messages from site visitors in the site chat.
164
134
  * @maxSize 24
165
135
  */
166
136
  frames?: WorkingHoursFrame[];
@@ -171,43 +141,13 @@ interface WorkingHoursFrame {
171
141
  start?: number;
172
142
  /** End time of the active hours. */
173
143
  end?: number;
174
- /** Who is available during timeframe, AI chat or user chat */
175
- frameType?: FrameHandlerTypeWithLiterals;
176
- }
177
- /** Who is available during timeframe, AI chat or user chat */
178
- declare enum FrameHandlerType {
179
- /** Unknown frame type. */
180
- UNKNOWN_FRAME_TYPE = "UNKNOWN_FRAME_TYPE",
181
- /** Frame type not selected. */
182
- NOT_SELECTED = "NOT_SELECTED",
183
- /** AI Chat available in time frame. */
184
- AI_CHAT = "AI_CHAT",
185
- /** Chat with human in time frame. */
186
- WIX_USER_CHAT = "WIX_USER_CHAT"
187
- }
188
- /** @enumType */
189
- type FrameHandlerTypeWithLiterals = FrameHandlerType | 'UNKNOWN_FRAME_TYPE' | 'NOT_SELECTED' | 'AI_CHAT' | 'WIX_USER_CHAT';
190
- /** Chat availability options */
191
- declare enum ChatHandlerMode {
192
- /** Unknown availability. */
193
- UNKNOWN_MODE = "UNKNOWN_MODE",
194
- /** AI assistant is always available. */
195
- ALWAYS_WITH_AI = "ALWAYS_WITH_AI",
196
- /** Chat with site owner is always available. */
197
- ALWAYS_WITH_WIX_USER = "ALWAYS_WITH_WIX_USER",
198
- /** AI and site owner are available according to schedule. */
199
- SCHEDULED = "SCHEDULED",
200
- /** AI assistant and site owner are always offline. */
201
- OFF = "OFF"
202
144
  }
203
- /** @enumType */
204
- type ChatHandlerModeWithLiterals = ChatHandlerMode | 'UNKNOWN_MODE' | 'ALWAYS_WITH_AI' | 'ALWAYS_WITH_WIX_USER' | 'SCHEDULED' | 'OFF';
205
145
  declare enum OfflineBehavior {
206
146
  /** Unknown offline behavior. */
207
147
  UNKNOWN_OFFLINE_BEHAVIOR = "UNKNOWN_OFFLINE_BEHAVIOR",
208
148
  /** Allows the site visitor to write messages, but doesn't send a contact form. */
209
149
  CHAT_ONLY = "CHAT_ONLY",
210
- /** Hides the AI Site-Chat from the site. */
150
+ /** Hides the AI assistant from the site. */
211
151
  HIDE = "HIDE",
212
152
  /** Doesn't allow the site visitor to write messages, but does send a contact form. */
213
153
  CONTACT_FORM_WITHOUT_CHAT = "CONTACT_FORM_WITHOUT_CHAT",
@@ -221,30 +161,9 @@ interface GetWidgetSettingsRequest {
221
161
  interface GetWidgetSettingsResponse {
222
162
  /** Retrieved widget settings. */
223
163
  widgetSettings?: WidgetSettings;
224
- /**
225
- * Whether the assistant is currently online.
226
- * @readonly
227
- * @deprecated Whether the assistant is currently online.
228
- * @replacedBy active_handlers
229
- * @targetRemovalDate 2025-12-01
230
- */
164
+ /** Whether the assistant is currently online. */
231
165
  assistantOnline?: boolean;
232
- /**
233
- * Active chat handlers (e.g., AI assistant, site owner).
234
- * @readonly
235
- */
236
- activeHandlers?: ChatHandlerWithLiterals[];
237
166
  }
238
- declare enum ChatHandler {
239
- /** Unknown handler. */
240
- UNKNOWN_HANDLER = "UNKNOWN_HANDLER",
241
- /** AI assistant is handling chats. */
242
- AI = "AI",
243
- /** Site owner is handling chats. */
244
- WIX_USER = "WIX_USER"
245
- }
246
- /** @enumType */
247
- type ChatHandlerWithLiterals = ChatHandler | 'UNKNOWN_HANDLER' | 'AI' | 'WIX_USER';
248
167
  interface SetWidgetSettingsRequest {
249
168
  /** Widget settings to update. */
250
169
  widgetSettings: WidgetSettings;
@@ -260,7 +179,7 @@ interface SetWidgetSettingsResponse {
260
179
  * @applicableIdentity APP
261
180
  * @fqn wix.innovation.assistant.widget.v1.Settings.GetWidgetSettings
262
181
  */
263
- declare function getWidgetSettings(): Promise<NonNullablePaths<GetWidgetSettingsResponse, `widgetSettings.enabled` | `widgetSettings.introMessage.message.enabled` | `widgetSettings.introMessage.message.text` | `widgetSettings.introMessage.suggestions.enabled` | `widgetSettings.introMessage.suggestions.questions` | `widgetSettings.contactForm.conditions.cannotAnswer` | `widgetSettings.contactForm.conditions.requestForPerson` | `widgetSettings.contactForm.fields.name` | `widgetSettings.contactForm.fields.email` | `widgetSettings.contactForm.fields.phone` | `widgetSettings.contactForm.fields.message` | `widgetSettings.contactForm.userConditions.beforeChat` | `widgetSettings.contactForm.userConditions.afterFirstMessage` | `widgetSettings.contactForm.userConditions.never` | `widgetSettings.autoOpen` | `widgetSettings.activeHours.always` | `widgetSettings.activeHours.schedule.monday.enabled` | `widgetSettings.activeHours.schedule.monday.frames` | `widgetSettings.activeHours.schedule.monday.frames.${number}.start` | `widgetSettings.activeHours.schedule.monday.frames.${number}.end` | `widgetSettings.activeHours.schedule.monday.frames.${number}.frameType` | `widgetSettings.activeHours.timeZone` | `widgetSettings.activeHours.mode` | `widgetSettings.offlineBehavior` | `assistantOnline` | `activeHandlers`, 8>>;
182
+ declare function getWidgetSettings(): Promise<NonNullablePaths<GetWidgetSettingsResponse, `widgetSettings.enabled` | `widgetSettings.introMessage.message.enabled` | `widgetSettings.introMessage.message.text` | `widgetSettings.introMessage.suggestions.enabled` | `widgetSettings.introMessage.suggestions.questions` | `widgetSettings.contactForm.conditions.cannotAnswer` | `widgetSettings.contactForm.conditions.requestForPerson` | `widgetSettings.contactForm.fields.name` | `widgetSettings.contactForm.fields.email` | `widgetSettings.contactForm.fields.phone` | `widgetSettings.contactForm.fields.message` | `widgetSettings.autoOpen` | `widgetSettings.activeHours.always` | `widgetSettings.activeHours.schedule.monday.enabled` | `widgetSettings.activeHours.schedule.monday.frames` | `widgetSettings.activeHours.schedule.monday.frames.${number}.start` | `widgetSettings.activeHours.schedule.monday.frames.${number}.end` | `widgetSettings.activeHours.timeZone` | `widgetSettings.offlineBehavior` | `assistantOnline`, 8>>;
264
183
  /**
265
184
  * Sets the widget settings for the site.
266
185
  * @param widgetSettings - Widget settings to update.
@@ -276,6 +195,6 @@ declare function getWidgetSettings(): Promise<NonNullablePaths<GetWidgetSettings
276
195
  * @applicableIdentity APP
277
196
  * @fqn wix.innovation.assistant.widget.v1.Settings.SetWidgetSettings
278
197
  */
279
- declare function setWidgetSettings(widgetSettings: NonNullablePaths<WidgetSettings, `activeHours` | `contactForm` | `contactForm.conditions` | `contactForm.fields` | `introMessage` | `offlineBehavior`, 3>): Promise<NonNullablePaths<SetWidgetSettingsResponse, `widgetSettings.enabled` | `widgetSettings.introMessage.message.enabled` | `widgetSettings.introMessage.message.text` | `widgetSettings.introMessage.suggestions.enabled` | `widgetSettings.introMessage.suggestions.questions` | `widgetSettings.contactForm.conditions.cannotAnswer` | `widgetSettings.contactForm.conditions.requestForPerson` | `widgetSettings.contactForm.fields.name` | `widgetSettings.contactForm.fields.email` | `widgetSettings.contactForm.fields.phone` | `widgetSettings.contactForm.fields.message` | `widgetSettings.contactForm.userConditions.beforeChat` | `widgetSettings.contactForm.userConditions.afterFirstMessage` | `widgetSettings.contactForm.userConditions.never` | `widgetSettings.autoOpen` | `widgetSettings.activeHours.always` | `widgetSettings.activeHours.schedule.monday.enabled` | `widgetSettings.activeHours.schedule.monday.frames` | `widgetSettings.activeHours.schedule.monday.frames.${number}.start` | `widgetSettings.activeHours.schedule.monday.frames.${number}.end` | `widgetSettings.activeHours.schedule.monday.frames.${number}.frameType` | `widgetSettings.activeHours.timeZone` | `widgetSettings.activeHours.mode` | `widgetSettings.offlineBehavior`, 8>>;
198
+ declare function setWidgetSettings(widgetSettings: NonNullablePaths<WidgetSettings, `activeHours` | `contactForm` | `contactForm.conditions` | `contactForm.fields` | `introMessage` | `offlineBehavior`, 3>): Promise<NonNullablePaths<SetWidgetSettingsResponse, `widgetSettings.enabled` | `widgetSettings.introMessage.message.enabled` | `widgetSettings.introMessage.message.text` | `widgetSettings.introMessage.suggestions.enabled` | `widgetSettings.introMessage.suggestions.questions` | `widgetSettings.contactForm.conditions.cannotAnswer` | `widgetSettings.contactForm.conditions.requestForPerson` | `widgetSettings.contactForm.fields.name` | `widgetSettings.contactForm.fields.email` | `widgetSettings.contactForm.fields.phone` | `widgetSettings.contactForm.fields.message` | `widgetSettings.autoOpen` | `widgetSettings.activeHours.always` | `widgetSettings.activeHours.schedule.monday.enabled` | `widgetSettings.activeHours.schedule.monday.frames` | `widgetSettings.activeHours.schedule.monday.frames.${number}.start` | `widgetSettings.activeHours.schedule.monday.frames.${number}.end` | `widgetSettings.activeHours.timeZone` | `widgetSettings.offlineBehavior`, 8>>;
280
199
 
281
- export { type ActiveHours, ChatHandler, ChatHandlerMode, type ChatHandlerModeWithLiterals, type ChatHandlerWithLiterals, type Conditions, type ContactForm, type DaySchedule, type Fields, FrameHandlerType, type FrameHandlerTypeWithLiterals, type GetWidgetSettingsRequest, type GetWidgetSettingsResponse, type IntroMessage, OfflineBehavior, type OfflineBehaviorWithLiterals, type Schedule, type SetWidgetSettingsRequest, type SetWidgetSettingsResponse, type SettingsMessage, type SuggestedQuestions, type UserConditions, type WidgetSettings, type WorkingHoursFrame, getWidgetSettings, setWidgetSettings };
200
+ export { type ActiveHours, type Conditions, type ContactForm, type DaySchedule, type Fields, type GetWidgetSettingsRequest, type GetWidgetSettingsResponse, type IntroMessage, OfflineBehavior, type OfflineBehaviorWithLiterals, type Schedule, type SetWidgetSettingsRequest, type SetWidgetSettingsResponse, type SettingsMessage, type SuggestedQuestions, type WidgetSettings, type WorkingHoursFrame, getWidgetSettings, setWidgetSettings };
@@ -146,21 +146,6 @@ function setWidgetSettings(payload) {
146
146
  }
147
147
 
148
148
  // src/innovation-widget-v1-widget-settings-widget-settings.universal.ts
149
- var FrameHandlerType = /* @__PURE__ */ ((FrameHandlerType2) => {
150
- FrameHandlerType2["UNKNOWN_FRAME_TYPE"] = "UNKNOWN_FRAME_TYPE";
151
- FrameHandlerType2["NOT_SELECTED"] = "NOT_SELECTED";
152
- FrameHandlerType2["AI_CHAT"] = "AI_CHAT";
153
- FrameHandlerType2["WIX_USER_CHAT"] = "WIX_USER_CHAT";
154
- return FrameHandlerType2;
155
- })(FrameHandlerType || {});
156
- var ChatHandlerMode = /* @__PURE__ */ ((ChatHandlerMode2) => {
157
- ChatHandlerMode2["UNKNOWN_MODE"] = "UNKNOWN_MODE";
158
- ChatHandlerMode2["ALWAYS_WITH_AI"] = "ALWAYS_WITH_AI";
159
- ChatHandlerMode2["ALWAYS_WITH_WIX_USER"] = "ALWAYS_WITH_WIX_USER";
160
- ChatHandlerMode2["SCHEDULED"] = "SCHEDULED";
161
- ChatHandlerMode2["OFF"] = "OFF";
162
- return ChatHandlerMode2;
163
- })(ChatHandlerMode || {});
164
149
  var OfflineBehavior = /* @__PURE__ */ ((OfflineBehavior2) => {
165
150
  OfflineBehavior2["UNKNOWN_OFFLINE_BEHAVIOR"] = "UNKNOWN_OFFLINE_BEHAVIOR";
166
151
  OfflineBehavior2["CHAT_ONLY"] = "CHAT_ONLY";
@@ -169,12 +154,6 @@ var OfflineBehavior = /* @__PURE__ */ ((OfflineBehavior2) => {
169
154
  OfflineBehavior2["CONTACT_FORM_WITH_CHAT"] = "CONTACT_FORM_WITH_CHAT";
170
155
  return OfflineBehavior2;
171
156
  })(OfflineBehavior || {});
172
- var ChatHandler = /* @__PURE__ */ ((ChatHandler2) => {
173
- ChatHandler2["UNKNOWN_HANDLER"] = "UNKNOWN_HANDLER";
174
- ChatHandler2["AI"] = "AI";
175
- ChatHandler2["WIX_USER"] = "WIX_USER";
176
- return ChatHandler2;
177
- })(ChatHandler || {});
178
157
  async function getWidgetSettings2() {
179
158
  const { httpClient, sideEffects } = arguments[0];
180
159
  const payload = renameKeysFromSDKRequestToRESTRequest({});
@@ -224,9 +203,6 @@ async function setWidgetSettings2(widgetSettings) {
224
203
  }
225
204
  }
226
205
  export {
227
- ChatHandler,
228
- ChatHandlerMode,
229
- FrameHandlerType,
230
206
  OfflineBehavior,
231
207
  getWidgetSettings2 as getWidgetSettings,
232
208
  setWidgetSettings2 as setWidgetSettings
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/innovation-widget-v1-widget-settings-widget-settings.universal.ts","../../src/innovation-widget-v1-widget-settings-widget-settings.http.ts"],"sourcesContent":["import { transformError as sdkTransformError } from '@wix/sdk-runtime/transform-error';\nimport {\n renameKeysFromSDKRequestToRESTRequest,\n renameKeysFromRESTResponseToSDKResponse,\n} from '@wix/sdk-runtime/rename-all-nested-keys';\nimport { HttpClient, NonNullablePaths } from '@wix/sdk-types';\nimport * as ambassadorWixInnovationWidgetV1WidgetSettings from './innovation-widget-v1-widget-settings-widget-settings.http.js';\n\nexport interface WidgetSettings {\n /**\n * Widget settings ID.\n * @format GUID\n * @readonly\n */\n _id?: string | null;\n /**\n * Whether the AI Site-Chat is enabled on the site.\n * @deprecated Whether the AI Site-Chat is enabled on the site.\n * @replacedBy active_hours\n * @targetRemovalDate 2025-12-01\n */\n enabled?: boolean;\n /** AI Site-Chat introduction. This is shown in the chat when a site visitor starts a new conversation. */\n introMessage?: IntroMessage;\n /** Settings for the contact form. */\n contactForm?: ContactForm;\n /**\n * Date and time the widget settings were created.\n * @readonly\n */\n _createdDate?: Date | null;\n /**\n * Date and time the widget settings were updated.\n * @readonly\n */\n _updatedDate?: Date | null;\n /** Whether to open the AI Site-Chat automatically when the site loads. */\n autoOpen?: boolean;\n /** Times the AI Site-Chat is available on the site. */\n activeHours?: ActiveHours;\n /** Defines how the AI Site-Chat functions during the non-active hours. */\n offlineBehavior?: OfflineBehaviorWithLiterals;\n /** Whether the AI Site-Chat should send a summary of the site visitor's navigation on the site. */\n navigationSummary?: boolean | null;\n /**\n * Wix Media image ID used for the AI Site-Chat.\n * @maxLength 500\n */\n avatar?: string | null;\n /** Whether to display example questions from the AI Site-Chat. */\n generatedQuestions?: boolean | null;\n}\n\n/** Intro message */\nexport interface IntroMessage {\n /** Main message settings. */\n message?: SettingsMessage;\n /** Legal disclaimer message settings. */\n legalDisclaimer?: SettingsMessage;\n /** Offline message settings. */\n offlineDisclaimer?: SettingsMessage;\n /** Message shown as popup to engage the site visitor with the AI assistant. */\n engage?: SettingsMessage;\n /** Suggested questions shown to the site visitor to help them get started. */\n suggestions?: SuggestedQuestions;\n}\n\nexport interface SettingsMessage {\n /** Whether the message is enabled. */\n enabled?: boolean;\n /**\n * Message content.\n * @maxLength 1000\n */\n text?: string;\n}\n\nexport interface SuggestedQuestions {\n /** Whether suggesting questions is enabled. */\n enabled?: boolean;\n /**\n * Suggested questions shown to the site visitor to help them get started.\n * @minSize 1\n * @maxSize 5\n */\n questions?: SettingsMessage[];\n /** Introduction message for the suggested questions. */\n introduction?: SettingsMessage;\n}\n\nexport interface ContactForm {\n /** When the AI Site-Chat should send the contact form. */\n conditions?: Conditions;\n /** Contact form fields. */\n fields?: Fields;\n /** When to show contact form if site owner is available. */\n userConditions?: UserConditions;\n}\n\n/** Contact form conditions for AI Site-Chat */\nexport interface Conditions {\n /** Whether the AI Site-Chat should send the contact form if the AI is unable to answer the site visitor's question. */\n cannotAnswer?: boolean;\n /** Whether the AI Site-Chat should send the contact form if the site visitor requests to chat with a real person. */\n requestForPerson?: boolean;\n /**\n * Require site visitor to fill contact form before starting a conversation.\n * @deprecated Require site visitor to fill contact form before starting a conversation.\n * @targetRemovalDate 2025-12-01\n */\n beforeChat?: boolean | null;\n}\n\n/** Contact form fields */\nexport interface Fields {\n /** Whether to include a name field in the form. */\n name?: boolean;\n /** Whether to include an email field in the form. */\n email?: boolean;\n /** Whether to include a phone number field in the form. */\n phone?: boolean;\n /** Whether to include a message field in the form. */\n message?: boolean;\n}\n\n/** Contact form conditions for when site owner is available */\nexport interface UserConditions {\n /** Show site visitor contact form before starting a conversation. */\n beforeChat?: boolean;\n /** Show site visitor contact form after their first message. */\n afterFirstMessage?: boolean;\n /** Never show site visitor contact form. */\n never?: boolean;\n}\n\n/** Working hours settings */\nexport interface ActiveHours {\n /**\n * Whether the AI Assistant is always online. If `true`, `schedule` and `timeZone` are ignored.\n * @deprecated Whether the AI Assistant is always online. If `true`, `schedule` and `timeZone` are ignored.\n * @replacedBy availability\n * @targetRemovalDate 2025-12-01\n */\n always?: boolean;\n /** Times at which the AI Assistant is online. */\n schedule?: Schedule;\n /**\n * Timezone used for the schedule.\n * @maxLength 256\n */\n timeZone?: string;\n /** Hours when AI assistant or site owner are available. */\n mode?: ChatHandlerModeWithLiterals;\n}\n\n/** Schedule */\nexport interface Schedule {\n /** Monday schedule. */\n monday?: DaySchedule;\n /** Tuesday schedule. */\n tuesday?: DaySchedule;\n /** Wednesday schedule. */\n wednesday?: DaySchedule;\n /** Thursday schedule. */\n thursday?: DaySchedule;\n /** Friday schedule. */\n friday?: DaySchedule;\n /** Saturday schedule. */\n saturday?: DaySchedule;\n /** Sunday schedule. */\n sunday?: DaySchedule;\n}\n\n/** Day schedule */\nexport interface DaySchedule {\n /** Whether the day is enabled. */\n enabled?: boolean;\n /**\n * Array of times during which the AI Site-Chat or site owner are available.\n * @maxSize 24\n */\n frames?: WorkingHoursFrame[];\n}\n\n/** Working hours frame */\nexport interface WorkingHoursFrame {\n /** Start time of the active hours. */\n start?: number;\n /** End time of the active hours. */\n end?: number;\n /** Who is available during timeframe, AI chat or user chat */\n frameType?: FrameHandlerTypeWithLiterals;\n}\n\n/** Who is available during timeframe, AI chat or user chat */\nexport enum FrameHandlerType {\n /** Unknown frame type. */\n UNKNOWN_FRAME_TYPE = 'UNKNOWN_FRAME_TYPE',\n /** Frame type not selected. */\n NOT_SELECTED = 'NOT_SELECTED',\n /** AI Chat available in time frame. */\n AI_CHAT = 'AI_CHAT',\n /** Chat with human in time frame. */\n WIX_USER_CHAT = 'WIX_USER_CHAT',\n}\n\n/** @enumType */\nexport type FrameHandlerTypeWithLiterals =\n | FrameHandlerType\n | 'UNKNOWN_FRAME_TYPE'\n | 'NOT_SELECTED'\n | 'AI_CHAT'\n | 'WIX_USER_CHAT';\n\n/** Chat availability options */\nexport enum ChatHandlerMode {\n /** Unknown availability. */\n UNKNOWN_MODE = 'UNKNOWN_MODE',\n /** AI assistant is always available. */\n ALWAYS_WITH_AI = 'ALWAYS_WITH_AI',\n /** Chat with site owner is always available. */\n ALWAYS_WITH_WIX_USER = 'ALWAYS_WITH_WIX_USER',\n /** AI and site owner are available according to schedule. */\n SCHEDULED = 'SCHEDULED',\n /** AI assistant and site owner are always offline. */\n OFF = 'OFF',\n}\n\n/** @enumType */\nexport type ChatHandlerModeWithLiterals =\n | ChatHandlerMode\n | 'UNKNOWN_MODE'\n | 'ALWAYS_WITH_AI'\n | 'ALWAYS_WITH_WIX_USER'\n | 'SCHEDULED'\n | 'OFF';\n\nexport enum OfflineBehavior {\n /** Unknown offline behavior. */\n UNKNOWN_OFFLINE_BEHAVIOR = 'UNKNOWN_OFFLINE_BEHAVIOR',\n /** Allows the site visitor to write messages, but doesn't send a contact form. */\n CHAT_ONLY = 'CHAT_ONLY',\n /** Hides the AI Site-Chat from the site. */\n HIDE = 'HIDE',\n /** Doesn't allow the site visitor to write messages, but does send a contact form. */\n CONTACT_FORM_WITHOUT_CHAT = 'CONTACT_FORM_WITHOUT_CHAT',\n /** Allows the site visitor to write messages and sends a contact form. */\n CONTACT_FORM_WITH_CHAT = 'CONTACT_FORM_WITH_CHAT',\n}\n\n/** @enumType */\nexport type OfflineBehaviorWithLiterals =\n | OfflineBehavior\n | 'UNKNOWN_OFFLINE_BEHAVIOR'\n | 'CHAT_ONLY'\n | 'HIDE'\n | 'CONTACT_FORM_WITHOUT_CHAT'\n | 'CONTACT_FORM_WITH_CHAT';\n\nexport interface GetWidgetSettingsRequest {}\n\nexport interface GetWidgetSettingsResponse {\n /** Retrieved widget settings. */\n widgetSettings?: WidgetSettings;\n /**\n * Whether the assistant is currently online.\n * @readonly\n * @deprecated Whether the assistant is currently online.\n * @replacedBy active_handlers\n * @targetRemovalDate 2025-12-01\n */\n assistantOnline?: boolean;\n /**\n * Active chat handlers (e.g., AI assistant, site owner).\n * @readonly\n */\n activeHandlers?: ChatHandlerWithLiterals[];\n}\n\nexport enum ChatHandler {\n /** Unknown handler. */\n UNKNOWN_HANDLER = 'UNKNOWN_HANDLER',\n /** AI assistant is handling chats. */\n AI = 'AI',\n /** Site owner is handling chats. */\n WIX_USER = 'WIX_USER',\n}\n\n/** @enumType */\nexport type ChatHandlerWithLiterals =\n | ChatHandler\n | 'UNKNOWN_HANDLER'\n | 'AI'\n | 'WIX_USER';\n\nexport interface SetWidgetSettingsRequest {\n /** Widget settings to update. */\n widgetSettings: WidgetSettings;\n}\n\nexport interface SetWidgetSettingsResponse {\n /** Updated widget settings. */\n widgetSettings?: WidgetSettings;\n}\n\n/**\n * Retrieves the widget settings for the site.\n * @public\n * @permissionId INNOVATION_LAB.CHAT_WIDGET_SETTINGS_READ\n * @applicableIdentity APP\n * @fqn wix.innovation.assistant.widget.v1.Settings.GetWidgetSettings\n */\nexport async function getWidgetSettings(): Promise<\n NonNullablePaths<\n GetWidgetSettingsResponse,\n | `widgetSettings.enabled`\n | `widgetSettings.introMessage.message.enabled`\n | `widgetSettings.introMessage.message.text`\n | `widgetSettings.introMessage.suggestions.enabled`\n | `widgetSettings.introMessage.suggestions.questions`\n | `widgetSettings.contactForm.conditions.cannotAnswer`\n | `widgetSettings.contactForm.conditions.requestForPerson`\n | `widgetSettings.contactForm.fields.name`\n | `widgetSettings.contactForm.fields.email`\n | `widgetSettings.contactForm.fields.phone`\n | `widgetSettings.contactForm.fields.message`\n | `widgetSettings.contactForm.userConditions.beforeChat`\n | `widgetSettings.contactForm.userConditions.afterFirstMessage`\n | `widgetSettings.contactForm.userConditions.never`\n | `widgetSettings.autoOpen`\n | `widgetSettings.activeHours.always`\n | `widgetSettings.activeHours.schedule.monday.enabled`\n | `widgetSettings.activeHours.schedule.monday.frames`\n | `widgetSettings.activeHours.schedule.monday.frames.${number}.start`\n | `widgetSettings.activeHours.schedule.monday.frames.${number}.end`\n | `widgetSettings.activeHours.schedule.monday.frames.${number}.frameType`\n | `widgetSettings.activeHours.timeZone`\n | `widgetSettings.activeHours.mode`\n | `widgetSettings.offlineBehavior`\n | `assistantOnline`\n | `activeHandlers`,\n 8\n >\n> {\n // @ts-ignore\n const { httpClient, sideEffects } = arguments[0] as {\n httpClient: HttpClient;\n sideEffects?: any;\n };\n\n const payload = renameKeysFromSDKRequestToRESTRequest({});\n\n const reqOpts =\n ambassadorWixInnovationWidgetV1WidgetSettings.getWidgetSettings(payload);\n\n sideEffects?.onSiteCall?.();\n try {\n const result = await httpClient.request(reqOpts);\n sideEffects?.onSuccess?.(result);\n\n return renameKeysFromRESTResponseToSDKResponse(result.data)!;\n } catch (err: any) {\n const transformedError = sdkTransformError(\n err,\n {\n spreadPathsToArguments: {},\n explicitPathsToArguments: {},\n singleArgumentUnchanged: false,\n },\n []\n );\n sideEffects?.onError?.(err);\n\n throw transformedError;\n }\n}\n\n/**\n * Sets the widget settings for the site.\n * @param widgetSettings - Widget settings to update.\n * @public\n * @requiredField widgetSettings\n * @requiredField widgetSettings.activeHours\n * @requiredField widgetSettings.contactForm\n * @requiredField widgetSettings.contactForm.conditions\n * @requiredField widgetSettings.contactForm.fields\n * @requiredField widgetSettings.introMessage\n * @requiredField widgetSettings.offlineBehavior\n * @permissionId INNOVATION_LAB.CHAT_WIDGET_SETTINGS_WRITE\n * @applicableIdentity APP\n * @fqn wix.innovation.assistant.widget.v1.Settings.SetWidgetSettings\n */\nexport async function setWidgetSettings(\n widgetSettings: NonNullablePaths<\n WidgetSettings,\n | `activeHours`\n | `contactForm`\n | `contactForm.conditions`\n | `contactForm.fields`\n | `introMessage`\n | `offlineBehavior`,\n 3\n >\n): Promise<\n NonNullablePaths<\n SetWidgetSettingsResponse,\n | `widgetSettings.enabled`\n | `widgetSettings.introMessage.message.enabled`\n | `widgetSettings.introMessage.message.text`\n | `widgetSettings.introMessage.suggestions.enabled`\n | `widgetSettings.introMessage.suggestions.questions`\n | `widgetSettings.contactForm.conditions.cannotAnswer`\n | `widgetSettings.contactForm.conditions.requestForPerson`\n | `widgetSettings.contactForm.fields.name`\n | `widgetSettings.contactForm.fields.email`\n | `widgetSettings.contactForm.fields.phone`\n | `widgetSettings.contactForm.fields.message`\n | `widgetSettings.contactForm.userConditions.beforeChat`\n | `widgetSettings.contactForm.userConditions.afterFirstMessage`\n | `widgetSettings.contactForm.userConditions.never`\n | `widgetSettings.autoOpen`\n | `widgetSettings.activeHours.always`\n | `widgetSettings.activeHours.schedule.monday.enabled`\n | `widgetSettings.activeHours.schedule.monday.frames`\n | `widgetSettings.activeHours.schedule.monday.frames.${number}.start`\n | `widgetSettings.activeHours.schedule.monday.frames.${number}.end`\n | `widgetSettings.activeHours.schedule.monday.frames.${number}.frameType`\n | `widgetSettings.activeHours.timeZone`\n | `widgetSettings.activeHours.mode`\n | `widgetSettings.offlineBehavior`,\n 8\n >\n> {\n // @ts-ignore\n const { httpClient, sideEffects } = arguments[1] as {\n httpClient: HttpClient;\n sideEffects?: any;\n };\n\n const payload = renameKeysFromSDKRequestToRESTRequest({\n widgetSettings: widgetSettings,\n });\n\n const reqOpts =\n ambassadorWixInnovationWidgetV1WidgetSettings.setWidgetSettings(payload);\n\n sideEffects?.onSiteCall?.();\n try {\n const result = await httpClient.request(reqOpts);\n sideEffects?.onSuccess?.(result);\n\n return renameKeysFromRESTResponseToSDKResponse(result.data)!;\n } catch (err: any) {\n const transformedError = sdkTransformError(\n err,\n {\n spreadPathsToArguments: {},\n explicitPathsToArguments: { widgetSettings: '$[0]' },\n singleArgumentUnchanged: false,\n },\n ['widgetSettings']\n );\n sideEffects?.onError?.(err);\n\n throw transformedError;\n }\n}\n","import { toURLSearchParams } from '@wix/sdk-runtime/rest-modules';\nimport { transformSDKTimestampToRESTTimestamp } from '@wix/sdk-runtime/transformations/timestamp';\nimport { transformRESTTimestampToSDKTimestamp } from '@wix/sdk-runtime/transformations/timestamp';\nimport { transformPaths } from '@wix/sdk-runtime/transformations/transform-paths';\nimport { resolveUrl } from '@wix/sdk-runtime/rest-modules';\nimport { ResolveUrlOpts } from '@wix/sdk-runtime/rest-modules';\nimport { RequestOptionsFactory } from '@wix/sdk-types';\n\nfunction resolveWixInnovationAssistantWidgetV1SettingsUrl(\n opts: Omit<ResolveUrlOpts, 'domainToMappings'>\n) {\n const domainToMappings = {\n 'manage._base_domain_': [\n {\n srcPath: '/wix-assistant-widget',\n destPath: '',\n },\n ],\n _: [\n {\n srcPath: '/wix-assistant-widget',\n destPath: '',\n },\n ],\n 'editor._base_domain_': [\n {\n srcPath: '/wix-assistant-widget',\n destPath: '',\n },\n ],\n 'blocks._base_domain_': [\n {\n srcPath: '/wix-assistant-widget',\n destPath: '',\n },\n ],\n 'create.editorx': [\n {\n srcPath: '/wix-assistant-widget',\n destPath: '',\n },\n ],\n '*.dev.wix-code.com': [\n {\n srcPath: '/wix-assistant-widget',\n destPath: '',\n },\n ],\n 'editor.wixapps.net': [\n {\n srcPath: '/wix-assistant-widget',\n destPath: '',\n },\n ],\n 'www.wixapis.com': [\n {\n srcPath: '/wix-assistant-widget',\n destPath: '',\n },\n {\n srcPath: '/innovation/widget',\n destPath: '',\n },\n ],\n 'www._base_domain_': [\n {\n srcPath: '/_api/wix-assistant-widget',\n destPath: '',\n },\n ],\n };\n\n return resolveUrl(Object.assign(opts, { domainToMappings }));\n}\n\nconst PACKAGE_NAME = '@wix/auto_sdk_ai-site-chat_widget-settings';\n\n/** Retrieves the widget settings for the site. */\nexport function getWidgetSettings(payload: object): RequestOptionsFactory<any> {\n function __getWidgetSettings({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.innovation.widget.v1.widget_settings',\n method: 'GET' as any,\n methodFqn:\n 'wix.innovation.assistant.widget.v1.Settings.GetWidgetSettings',\n packageName: PACKAGE_NAME,\n migrationOptions: {\n optInTransformResponse: true,\n },\n url: resolveWixInnovationAssistantWidgetV1SettingsUrl({\n protoPath: '/v1/settings',\n data: payload,\n host,\n }),\n params: toURLSearchParams(payload),\n transformResponse: (payload: any) =>\n transformPaths(payload, [\n {\n transformFn: transformRESTTimestampToSDKTimestamp,\n paths: [\n { path: 'widgetSettings.createdDate' },\n { path: 'widgetSettings.updatedDate' },\n ],\n },\n ]),\n };\n\n return metadata;\n }\n\n return __getWidgetSettings;\n}\n\n/** Sets the widget settings for the site. */\nexport function setWidgetSettings(payload: object): RequestOptionsFactory<any> {\n function __setWidgetSettings({ host }: any) {\n const serializedData = transformPaths(payload, [\n {\n transformFn: transformSDKTimestampToRESTTimestamp,\n paths: [\n { path: 'widgetSettings.createdDate' },\n { path: 'widgetSettings.updatedDate' },\n ],\n },\n ]);\n const metadata = {\n entityFqdn: 'wix.innovation.widget.v1.widget_settings',\n method: 'POST' as any,\n methodFqn:\n 'wix.innovation.assistant.widget.v1.Settings.SetWidgetSettings',\n packageName: PACKAGE_NAME,\n migrationOptions: {\n optInTransformResponse: true,\n },\n url: resolveWixInnovationAssistantWidgetV1SettingsUrl({\n protoPath: '/v1/settings',\n data: serializedData,\n host,\n }),\n data: serializedData,\n transformResponse: (payload: any) =>\n transformPaths(payload, [\n {\n transformFn: transformRESTTimestampToSDKTimestamp,\n paths: [\n { path: 'widgetSettings.createdDate' },\n { path: 'widgetSettings.updatedDate' },\n ],\n },\n ]),\n };\n\n return metadata;\n }\n\n return __setWidgetSettings;\n}\n"],"mappings":"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","names":["payload","FrameHandlerType","ChatHandlerMode","OfflineBehavior","ChatHandler","getWidgetSettings","setWidgetSettings"]}
1
+ {"version":3,"sources":["../../src/innovation-widget-v1-widget-settings-widget-settings.universal.ts","../../src/innovation-widget-v1-widget-settings-widget-settings.http.ts"],"sourcesContent":["import { transformError as sdkTransformError } from '@wix/sdk-runtime/transform-error';\nimport {\n renameKeysFromSDKRequestToRESTRequest,\n renameKeysFromRESTResponseToSDKResponse,\n} from '@wix/sdk-runtime/rename-all-nested-keys';\nimport { HttpClient, NonNullablePaths } from '@wix/sdk-types';\nimport * as ambassadorWixInnovationWidgetV1WidgetSettings from './innovation-widget-v1-widget-settings-widget-settings.http.js';\n\nexport interface WidgetSettings {\n /**\n * Widget settings ID.\n * @format GUID\n * @readonly\n */\n _id?: string | null;\n /** Whether the AI assistant is enabled on the site. */\n enabled?: boolean;\n /** AI assistant introduction. This is shown in the chat when a site visitor starts a new conversation. */\n introMessage?: IntroMessage;\n /** Settings for the contact form. */\n contactForm?: ContactForm;\n /**\n * Date and time the widget settings were created.\n * @readonly\n */\n _createdDate?: Date | null;\n /**\n * Date and time the widget settings were updated.\n * @readonly\n */\n _updatedDate?: Date | null;\n /** Whether to open the AI assistant automatically when the site loads. */\n autoOpen?: boolean;\n /** Times the AI assistant is available on the site. */\n activeHours?: ActiveHours;\n /** Defines how the AI assistant functions during the non-active hours. */\n offlineBehavior?: OfflineBehaviorWithLiterals;\n /** Whether the AI assistant should send a summary of the site visitor's navigation on the site. */\n navigationSummary?: boolean | null;\n /**\n * Wix Media image ID used for the AI assistant.\n * @maxLength 500\n */\n avatar?: string | null;\n /** Whether to display example questions from the AI assistant. */\n generatedQuestions?: boolean | null;\n}\n\n/** Intro message */\nexport interface IntroMessage {\n /** Main message settings. */\n message?: SettingsMessage;\n /** Legal disclaimer message settings. */\n legalDisclaimer?: SettingsMessage;\n /** Offline message settings. */\n offlineDisclaimer?: SettingsMessage;\n /** Message shown as popup to engage the site visitor with the AI assistant. */\n engage?: SettingsMessage;\n /** Suggested questions shown to the site visitor to help them get started. */\n suggestions?: SuggestedQuestions;\n}\n\nexport interface SettingsMessage {\n /** Whether the message is enabled. */\n enabled?: boolean;\n /**\n * Message content.\n * @maxLength 1000\n */\n text?: string;\n}\n\nexport interface SuggestedQuestions {\n /** Whether suggesting questions is enabled. */\n enabled?: boolean;\n /**\n * Suggested questions shown to the site visitor to help them get started.\n * @maxSize 5\n */\n questions?: SettingsMessage[];\n /** Introduction message for the suggested questions. */\n introduction?: SettingsMessage;\n}\n\nexport interface ContactForm {\n /** When the AI assistant should send the contact form. */\n conditions?: Conditions;\n /** Contact form fields. */\n fields?: Fields;\n}\n\n/** Contact form conditions for AI assistant */\nexport interface Conditions {\n /** Whether the AI assistant should send the contact form if the AI is unable to answer the site visitor's question. */\n cannotAnswer?: boolean;\n /** Whether the AI assistant should send the contact form if the site visitor requests to chat with a real person. */\n requestForPerson?: boolean;\n}\n\n/** Contact form fields */\nexport interface Fields {\n /** Whether to include a name field in the form. */\n name?: boolean;\n /** Whether to include an email field in the form. */\n email?: boolean;\n /** Whether to include a phone number field in the form. */\n phone?: boolean;\n /** Whether to include a message field in the form. */\n message?: boolean;\n}\n\n/** Working hours settings */\nexport interface ActiveHours {\n /** Whether the AI Assistant is always online. If `true`, `schedule` and `timeZone` are ignored. */\n always?: boolean;\n /** Times at which the AI Assistant is online. */\n schedule?: Schedule;\n /**\n * Timezone used for the schedule.\n * @maxLength 256\n */\n timeZone?: string;\n}\n\n/** Schedule */\nexport interface Schedule {\n /** Monday schedule. */\n monday?: DaySchedule;\n /** Tuesday schedule. */\n tuesday?: DaySchedule;\n /** Wednesday schedule. */\n wednesday?: DaySchedule;\n /** Thursday schedule. */\n thursday?: DaySchedule;\n /** Friday schedule. */\n friday?: DaySchedule;\n /** Saturday schedule. */\n saturday?: DaySchedule;\n /** Sunday schedule. */\n sunday?: DaySchedule;\n}\n\n/** Day schedule */\nexport interface DaySchedule {\n /** Whether the day is enabled. */\n enabled?: boolean;\n /**\n * Array of times during which the AI assistant or Wix user are available to respond to messages from site visitors in the site chat.\n * @maxSize 24\n */\n frames?: WorkingHoursFrame[];\n}\n\n/** Working hours frame */\nexport interface WorkingHoursFrame {\n /** Start time of the active hours. */\n start?: number;\n /** End time of the active hours. */\n end?: number;\n}\n\nexport enum OfflineBehavior {\n /** Unknown offline behavior. */\n UNKNOWN_OFFLINE_BEHAVIOR = 'UNKNOWN_OFFLINE_BEHAVIOR',\n /** Allows the site visitor to write messages, but doesn't send a contact form. */\n CHAT_ONLY = 'CHAT_ONLY',\n /** Hides the AI assistant from the site. */\n HIDE = 'HIDE',\n /** Doesn't allow the site visitor to write messages, but does send a contact form. */\n CONTACT_FORM_WITHOUT_CHAT = 'CONTACT_FORM_WITHOUT_CHAT',\n /** Allows the site visitor to write messages and sends a contact form. */\n CONTACT_FORM_WITH_CHAT = 'CONTACT_FORM_WITH_CHAT',\n}\n\n/** @enumType */\nexport type OfflineBehaviorWithLiterals =\n | OfflineBehavior\n | 'UNKNOWN_OFFLINE_BEHAVIOR'\n | 'CHAT_ONLY'\n | 'HIDE'\n | 'CONTACT_FORM_WITHOUT_CHAT'\n | 'CONTACT_FORM_WITH_CHAT';\n\nexport interface GetWidgetSettingsRequest {}\n\nexport interface GetWidgetSettingsResponse {\n /** Retrieved widget settings. */\n widgetSettings?: WidgetSettings;\n /** Whether the assistant is currently online. */\n assistantOnline?: boolean;\n}\n\nexport interface SetWidgetSettingsRequest {\n /** Widget settings to update. */\n widgetSettings: WidgetSettings;\n}\n\nexport interface SetWidgetSettingsResponse {\n /** Updated widget settings. */\n widgetSettings?: WidgetSettings;\n}\n\n/**\n * Retrieves the widget settings for the site.\n * @public\n * @permissionId INNOVATION_LAB.CHAT_WIDGET_SETTINGS_READ\n * @applicableIdentity APP\n * @fqn wix.innovation.assistant.widget.v1.Settings.GetWidgetSettings\n */\nexport async function getWidgetSettings(): Promise<\n NonNullablePaths<\n GetWidgetSettingsResponse,\n | `widgetSettings.enabled`\n | `widgetSettings.introMessage.message.enabled`\n | `widgetSettings.introMessage.message.text`\n | `widgetSettings.introMessage.suggestions.enabled`\n | `widgetSettings.introMessage.suggestions.questions`\n | `widgetSettings.contactForm.conditions.cannotAnswer`\n | `widgetSettings.contactForm.conditions.requestForPerson`\n | `widgetSettings.contactForm.fields.name`\n | `widgetSettings.contactForm.fields.email`\n | `widgetSettings.contactForm.fields.phone`\n | `widgetSettings.contactForm.fields.message`\n | `widgetSettings.autoOpen`\n | `widgetSettings.activeHours.always`\n | `widgetSettings.activeHours.schedule.monday.enabled`\n | `widgetSettings.activeHours.schedule.monday.frames`\n | `widgetSettings.activeHours.schedule.monday.frames.${number}.start`\n | `widgetSettings.activeHours.schedule.monday.frames.${number}.end`\n | `widgetSettings.activeHours.timeZone`\n | `widgetSettings.offlineBehavior`\n | `assistantOnline`,\n 8\n >\n> {\n // @ts-ignore\n const { httpClient, sideEffects } = arguments[0] as {\n httpClient: HttpClient;\n sideEffects?: any;\n };\n\n const payload = renameKeysFromSDKRequestToRESTRequest({});\n\n const reqOpts =\n ambassadorWixInnovationWidgetV1WidgetSettings.getWidgetSettings(payload);\n\n sideEffects?.onSiteCall?.();\n try {\n const result = await httpClient.request(reqOpts);\n sideEffects?.onSuccess?.(result);\n\n return renameKeysFromRESTResponseToSDKResponse(result.data)!;\n } catch (err: any) {\n const transformedError = sdkTransformError(\n err,\n {\n spreadPathsToArguments: {},\n explicitPathsToArguments: {},\n singleArgumentUnchanged: false,\n },\n []\n );\n sideEffects?.onError?.(err);\n\n throw transformedError;\n }\n}\n\n/**\n * Sets the widget settings for the site.\n * @param widgetSettings - Widget settings to update.\n * @public\n * @requiredField widgetSettings\n * @requiredField widgetSettings.activeHours\n * @requiredField widgetSettings.contactForm\n * @requiredField widgetSettings.contactForm.conditions\n * @requiredField widgetSettings.contactForm.fields\n * @requiredField widgetSettings.introMessage\n * @requiredField widgetSettings.offlineBehavior\n * @permissionId INNOVATION_LAB.CHAT_WIDGET_SETTINGS_WRITE\n * @applicableIdentity APP\n * @fqn wix.innovation.assistant.widget.v1.Settings.SetWidgetSettings\n */\nexport async function setWidgetSettings(\n widgetSettings: NonNullablePaths<\n WidgetSettings,\n | `activeHours`\n | `contactForm`\n | `contactForm.conditions`\n | `contactForm.fields`\n | `introMessage`\n | `offlineBehavior`,\n 3\n >\n): Promise<\n NonNullablePaths<\n SetWidgetSettingsResponse,\n | `widgetSettings.enabled`\n | `widgetSettings.introMessage.message.enabled`\n | `widgetSettings.introMessage.message.text`\n | `widgetSettings.introMessage.suggestions.enabled`\n | `widgetSettings.introMessage.suggestions.questions`\n | `widgetSettings.contactForm.conditions.cannotAnswer`\n | `widgetSettings.contactForm.conditions.requestForPerson`\n | `widgetSettings.contactForm.fields.name`\n | `widgetSettings.contactForm.fields.email`\n | `widgetSettings.contactForm.fields.phone`\n | `widgetSettings.contactForm.fields.message`\n | `widgetSettings.autoOpen`\n | `widgetSettings.activeHours.always`\n | `widgetSettings.activeHours.schedule.monday.enabled`\n | `widgetSettings.activeHours.schedule.monday.frames`\n | `widgetSettings.activeHours.schedule.monday.frames.${number}.start`\n | `widgetSettings.activeHours.schedule.monday.frames.${number}.end`\n | `widgetSettings.activeHours.timeZone`\n | `widgetSettings.offlineBehavior`,\n 8\n >\n> {\n // @ts-ignore\n const { httpClient, sideEffects } = arguments[1] as {\n httpClient: HttpClient;\n sideEffects?: any;\n };\n\n const payload = renameKeysFromSDKRequestToRESTRequest({\n widgetSettings: widgetSettings,\n });\n\n const reqOpts =\n ambassadorWixInnovationWidgetV1WidgetSettings.setWidgetSettings(payload);\n\n sideEffects?.onSiteCall?.();\n try {\n const result = await httpClient.request(reqOpts);\n sideEffects?.onSuccess?.(result);\n\n return renameKeysFromRESTResponseToSDKResponse(result.data)!;\n } catch (err: any) {\n const transformedError = sdkTransformError(\n err,\n {\n spreadPathsToArguments: {},\n explicitPathsToArguments: { widgetSettings: '$[0]' },\n singleArgumentUnchanged: false,\n },\n ['widgetSettings']\n );\n sideEffects?.onError?.(err);\n\n throw transformedError;\n }\n}\n","import { toURLSearchParams } from '@wix/sdk-runtime/rest-modules';\nimport { transformSDKTimestampToRESTTimestamp } from '@wix/sdk-runtime/transformations/timestamp';\nimport { transformRESTTimestampToSDKTimestamp } from '@wix/sdk-runtime/transformations/timestamp';\nimport { transformPaths } from '@wix/sdk-runtime/transformations/transform-paths';\nimport { resolveUrl } from '@wix/sdk-runtime/rest-modules';\nimport { ResolveUrlOpts } from '@wix/sdk-runtime/rest-modules';\nimport { RequestOptionsFactory } from '@wix/sdk-types';\n\nfunction resolveWixInnovationAssistantWidgetV1SettingsUrl(\n opts: Omit<ResolveUrlOpts, 'domainToMappings'>\n) {\n const domainToMappings = {\n 'manage._base_domain_': [\n {\n srcPath: '/wix-assistant-widget',\n destPath: '',\n },\n ],\n _: [\n {\n srcPath: '/wix-assistant-widget',\n destPath: '',\n },\n ],\n 'editor._base_domain_': [\n {\n srcPath: '/wix-assistant-widget',\n destPath: '',\n },\n ],\n 'blocks._base_domain_': [\n {\n srcPath: '/wix-assistant-widget',\n destPath: '',\n },\n ],\n 'create.editorx': [\n {\n srcPath: '/wix-assistant-widget',\n destPath: '',\n },\n ],\n '*.dev.wix-code.com': [\n {\n srcPath: '/wix-assistant-widget',\n destPath: '',\n },\n ],\n 'editor.wixapps.net': [\n {\n srcPath: '/wix-assistant-widget',\n destPath: '',\n },\n ],\n 'www.wixapis.com': [\n {\n srcPath: '/wix-assistant-widget',\n destPath: '',\n },\n {\n srcPath: '/innovation/widget',\n destPath: '',\n },\n ],\n 'www._base_domain_': [\n {\n srcPath: '/_api/wix-assistant-widget',\n destPath: '',\n },\n ],\n };\n\n return resolveUrl(Object.assign(opts, { domainToMappings }));\n}\n\nconst PACKAGE_NAME = '@wix/auto_sdk_ai-site-chat_widget-settings';\n\n/** Retrieves the widget settings for the site. */\nexport function getWidgetSettings(payload: object): RequestOptionsFactory<any> {\n function __getWidgetSettings({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.innovation.widget.v1.widget_settings',\n method: 'GET' as any,\n methodFqn:\n 'wix.innovation.assistant.widget.v1.Settings.GetWidgetSettings',\n packageName: PACKAGE_NAME,\n migrationOptions: {\n optInTransformResponse: true,\n },\n url: resolveWixInnovationAssistantWidgetV1SettingsUrl({\n protoPath: '/v1/settings',\n data: payload,\n host,\n }),\n params: toURLSearchParams(payload),\n transformResponse: (payload: any) =>\n transformPaths(payload, [\n {\n transformFn: transformRESTTimestampToSDKTimestamp,\n paths: [\n { path: 'widgetSettings.createdDate' },\n { path: 'widgetSettings.updatedDate' },\n ],\n },\n ]),\n };\n\n return metadata;\n }\n\n return __getWidgetSettings;\n}\n\n/** Sets the widget settings for the site. */\nexport function setWidgetSettings(payload: object): RequestOptionsFactory<any> {\n function __setWidgetSettings({ host }: any) {\n const serializedData = transformPaths(payload, [\n {\n transformFn: transformSDKTimestampToRESTTimestamp,\n paths: [\n { path: 'widgetSettings.createdDate' },\n { path: 'widgetSettings.updatedDate' },\n ],\n },\n ]);\n const metadata = {\n entityFqdn: 'wix.innovation.widget.v1.widget_settings',\n method: 'POST' as any,\n methodFqn:\n 'wix.innovation.assistant.widget.v1.Settings.SetWidgetSettings',\n packageName: PACKAGE_NAME,\n migrationOptions: {\n optInTransformResponse: true,\n },\n url: resolveWixInnovationAssistantWidgetV1SettingsUrl({\n protoPath: '/v1/settings',\n data: serializedData,\n host,\n }),\n data: serializedData,\n transformResponse: (payload: any) =>\n transformPaths(payload, [\n {\n transformFn: transformRESTTimestampToSDKTimestamp,\n paths: [\n { path: 'widgetSettings.createdDate' },\n { path: 'widgetSettings.updatedDate' },\n ],\n },\n ]),\n };\n\n return metadata;\n }\n\n return __setWidgetSettings;\n}\n"],"mappings":";AAAA,SAAS,kBAAkB,yBAAyB;AACpD;AAAA,EACE;AAAA,EACA;AAAA,OACK;;;ACJP,SAAS,yBAAyB;AAClC,SAAS,4CAA4C;AACrD,SAAS,4CAA4C;AACrD,SAAS,sBAAsB;AAC/B,SAAS,kBAAkB;AAI3B,SAAS,iDACP,MACA;AACA,QAAM,mBAAmB;AAAA,IACvB,wBAAwB;AAAA,MACtB;AAAA,QACE,SAAS;AAAA,QACT,UAAU;AAAA,MACZ;AAAA,IACF;AAAA,IACA,GAAG;AAAA,MACD;AAAA,QACE,SAAS;AAAA,QACT,UAAU;AAAA,MACZ;AAAA,IACF;AAAA,IACA,wBAAwB;AAAA,MACtB;AAAA,QACE,SAAS;AAAA,QACT,UAAU;AAAA,MACZ;AAAA,IACF;AAAA,IACA,wBAAwB;AAAA,MACtB;AAAA,QACE,SAAS;AAAA,QACT,UAAU;AAAA,MACZ;AAAA,IACF;AAAA,IACA,kBAAkB;AAAA,MAChB;AAAA,QACE,SAAS;AAAA,QACT,UAAU;AAAA,MACZ;AAAA,IACF;AAAA,IACA,sBAAsB;AAAA,MACpB;AAAA,QACE,SAAS;AAAA,QACT,UAAU;AAAA,MACZ;AAAA,IACF;AAAA,IACA,sBAAsB;AAAA,MACpB;AAAA,QACE,SAAS;AAAA,QACT,UAAU;AAAA,MACZ;AAAA,IACF;AAAA,IACA,mBAAmB;AAAA,MACjB;AAAA,QACE,SAAS;AAAA,QACT,UAAU;AAAA,MACZ;AAAA,MACA;AAAA,QACE,SAAS;AAAA,QACT,UAAU;AAAA,MACZ;AAAA,IACF;AAAA,IACA,qBAAqB;AAAA,MACnB;AAAA,QACE,SAAS;AAAA,QACT,UAAU;AAAA,MACZ;AAAA,IACF;AAAA,EACF;AAEA,SAAO,WAAW,OAAO,OAAO,MAAM,EAAE,iBAAiB,CAAC,CAAC;AAC7D;AAEA,IAAM,eAAe;AAGd,SAAS,kBAAkB,SAA6C;AAC7E,WAAS,oBAAoB,EAAE,KAAK,GAAQ;AAC1C,UAAM,WAAW;AAAA,MACf,YAAY;AAAA,MACZ,QAAQ;AAAA,MACR,WACE;AAAA,MACF,aAAa;AAAA,MACb,kBAAkB;AAAA,QAChB,wBAAwB;AAAA,MAC1B;AAAA,MACA,KAAK,iDAAiD;AAAA,QACpD,WAAW;AAAA,QACX,MAAM;AAAA,QACN;AAAA,MACF,CAAC;AAAA,MACD,QAAQ,kBAAkB,OAAO;AAAA,MACjC,mBAAmB,CAACA,aAClB,eAAeA,UAAS;AAAA,QACtB;AAAA,UACE,aAAa;AAAA,UACb,OAAO;AAAA,YACL,EAAE,MAAM,6BAA6B;AAAA,YACrC,EAAE,MAAM,6BAA6B;AAAA,UACvC;AAAA,QACF;AAAA,MACF,CAAC;AAAA,IACL;AAEA,WAAO;AAAA,EACT;AAEA,SAAO;AACT;AAGO,SAAS,kBAAkB,SAA6C;AAC7E,WAAS,oBAAoB,EAAE,KAAK,GAAQ;AAC1C,UAAM,iBAAiB,eAAe,SAAS;AAAA,MAC7C;AAAA,QACE,aAAa;AAAA,QACb,OAAO;AAAA,UACL,EAAE,MAAM,6BAA6B;AAAA,UACrC,EAAE,MAAM,6BAA6B;AAAA,QACvC;AAAA,MACF;AAAA,IACF,CAAC;AACD,UAAM,WAAW;AAAA,MACf,YAAY;AAAA,MACZ,QAAQ;AAAA,MACR,WACE;AAAA,MACF,aAAa;AAAA,MACb,kBAAkB;AAAA,QAChB,wBAAwB;AAAA,MAC1B;AAAA,MACA,KAAK,iDAAiD;AAAA,QACpD,WAAW;AAAA,QACX,MAAM;AAAA,QACN;AAAA,MACF,CAAC;AAAA,MACD,MAAM;AAAA,MACN,mBAAmB,CAACA,aAClB,eAAeA,UAAS;AAAA,QACtB;AAAA,UACE,aAAa;AAAA,UACb,OAAO;AAAA,YACL,EAAE,MAAM,6BAA6B;AAAA,YACrC,EAAE,MAAM,6BAA6B;AAAA,UACvC;AAAA,QACF;AAAA,MACF,CAAC;AAAA,IACL;AAEA,WAAO;AAAA,EACT;AAEA,SAAO;AACT;;;ADKO,IAAK,kBAAL,kBAAKC,qBAAL;AAEL,EAAAA,iBAAA,8BAA2B;AAE3B,EAAAA,iBAAA,eAAY;AAEZ,EAAAA,iBAAA,UAAO;AAEP,EAAAA,iBAAA,+BAA4B;AAE5B,EAAAA,iBAAA,4BAAyB;AAVf,SAAAA;AAAA,GAAA;AAgDZ,eAAsBC,qBAyBpB;AAEA,QAAM,EAAE,YAAY,YAAY,IAAI,UAAU,CAAC;AAK/C,QAAM,UAAU,sCAAsC,CAAC,CAAC;AAExD,QAAM,UAC0C,kBAAkB,OAAO;AAEzE,eAAa,aAAa;AAC1B,MAAI;AACF,UAAM,SAAS,MAAM,WAAW,QAAQ,OAAO;AAC/C,iBAAa,YAAY,MAAM;AAE/B,WAAO,wCAAwC,OAAO,IAAI;AAAA,EAC5D,SAAS,KAAU;AACjB,UAAM,mBAAmB;AAAA,MACvB;AAAA,MACA;AAAA,QACE,wBAAwB,CAAC;AAAA,QACzB,0BAA0B,CAAC;AAAA,QAC3B,yBAAyB;AAAA,MAC3B;AAAA,MACA,CAAC;AAAA,IACH;AACA,iBAAa,UAAU,GAAG;AAE1B,UAAM;AAAA,EACR;AACF;AAiBA,eAAsBC,mBACpB,gBAkCA;AAEA,QAAM,EAAE,YAAY,YAAY,IAAI,UAAU,CAAC;AAK/C,QAAM,UAAU,sCAAsC;AAAA,IACpD;AAAA,EACF,CAAC;AAED,QAAM,UAC0C,kBAAkB,OAAO;AAEzE,eAAa,aAAa;AAC1B,MAAI;AACF,UAAM,SAAS,MAAM,WAAW,QAAQ,OAAO;AAC/C,iBAAa,YAAY,MAAM;AAE/B,WAAO,wCAAwC,OAAO,IAAI;AAAA,EAC5D,SAAS,KAAU;AACjB,UAAM,mBAAmB;AAAA,MACvB;AAAA,MACA;AAAA,QACE,wBAAwB,CAAC;AAAA,QACzB,0BAA0B,EAAE,gBAAgB,OAAO;AAAA,QACnD,yBAAyB;AAAA,MAC3B;AAAA,MACA,CAAC,gBAAgB;AAAA,IACnB;AACA,iBAAa,UAAU,GAAG;AAE1B,UAAM;AAAA,EACR;AACF;","names":["payload","OfflineBehavior","getWidgetSettings","setWidgetSettings"]}
@@ -8,14 +8,9 @@ interface WidgetSettings {
8
8
  * @readonly
9
9
  */
10
10
  id?: string | null;
11
- /**
12
- * Whether the AI Site-Chat is enabled on the site.
13
- * @deprecated Whether the AI Site-Chat is enabled on the site.
14
- * @replacedBy active_hours
15
- * @targetRemovalDate 2025-12-01
16
- */
11
+ /** Whether the AI assistant is enabled on the site. */
17
12
  enabled?: boolean;
18
- /** AI Site-Chat introduction. This is shown in the chat when a site visitor starts a new conversation. */
13
+ /** AI assistant introduction. This is shown in the chat when a site visitor starts a new conversation. */
19
14
  introMessage?: IntroMessage;
20
15
  /** Settings for the contact form. */
21
16
  contactForm?: ContactForm;
@@ -29,20 +24,20 @@ interface WidgetSettings {
29
24
  * @readonly
30
25
  */
31
26
  updatedDate?: Date | null;
32
- /** Whether to open the AI Site-Chat automatically when the site loads. */
27
+ /** Whether to open the AI assistant automatically when the site loads. */
33
28
  autoOpen?: boolean;
34
- /** Times the AI Site-Chat is available on the site. */
29
+ /** Times the AI assistant is available on the site. */
35
30
  activeHours?: ActiveHours;
36
- /** Defines how the AI Site-Chat functions during the non-active hours. */
31
+ /** Defines how the AI assistant functions during the non-active hours. */
37
32
  offlineBehavior?: OfflineBehaviorWithLiterals;
38
- /** Whether the AI Site-Chat should send a summary of the site visitor's navigation on the site. */
33
+ /** Whether the AI assistant should send a summary of the site visitor's navigation on the site. */
39
34
  navigationSummary?: boolean | null;
40
35
  /**
41
- * Wix Media image ID used for the AI Site-Chat.
36
+ * Wix Media image ID used for the AI assistant.
42
37
  * @maxLength 500
43
38
  */
44
39
  avatar?: string | null;
45
- /** Whether to display example questions from the AI Site-Chat. */
40
+ /** Whether to display example questions from the AI assistant. */
46
41
  generatedQuestions?: boolean | null;
47
42
  }
48
43
  /** Intro message */
@@ -72,7 +67,6 @@ interface SuggestedQuestions {
72
67
  enabled?: boolean;
73
68
  /**
74
69
  * Suggested questions shown to the site visitor to help them get started.
75
- * @minSize 1
76
70
  * @maxSize 5
77
71
  */
78
72
  questions?: SettingsMessage[];
@@ -80,25 +74,17 @@ interface SuggestedQuestions {
80
74
  introduction?: SettingsMessage;
81
75
  }
82
76
  interface ContactForm {
83
- /** When the AI Site-Chat should send the contact form. */
77
+ /** When the AI assistant should send the contact form. */
84
78
  conditions?: Conditions;
85
79
  /** Contact form fields. */
86
80
  fields?: Fields;
87
- /** When to show contact form if site owner is available. */
88
- userConditions?: UserConditions;
89
81
  }
90
- /** Contact form conditions for AI Site-Chat */
82
+ /** Contact form conditions for AI assistant */
91
83
  interface Conditions {
92
- /** Whether the AI Site-Chat should send the contact form if the AI is unable to answer the site visitor's question. */
84
+ /** Whether the AI assistant should send the contact form if the AI is unable to answer the site visitor's question. */
93
85
  cannotAnswer?: boolean;
94
- /** Whether the AI Site-Chat should send the contact form if the site visitor requests to chat with a real person. */
86
+ /** Whether the AI assistant should send the contact form if the site visitor requests to chat with a real person. */
95
87
  requestForPerson?: boolean;
96
- /**
97
- * Require site visitor to fill contact form before starting a conversation.
98
- * @deprecated Require site visitor to fill contact form before starting a conversation.
99
- * @targetRemovalDate 2025-12-01
100
- */
101
- beforeChat?: boolean | null;
102
88
  }
103
89
  /** Contact form fields */
104
90
  interface Fields {
@@ -111,23 +97,9 @@ interface Fields {
111
97
  /** Whether to include a message field in the form. */
112
98
  message?: boolean;
113
99
  }
114
- /** Contact form conditions for when site owner is available */
115
- interface UserConditions {
116
- /** Show site visitor contact form before starting a conversation. */
117
- beforeChat?: boolean;
118
- /** Show site visitor contact form after their first message. */
119
- afterFirstMessage?: boolean;
120
- /** Never show site visitor contact form. */
121
- never?: boolean;
122
- }
123
100
  /** Working hours settings */
124
101
  interface ActiveHours {
125
- /**
126
- * Whether the AI Assistant is always online. If `true`, `schedule` and `timeZone` are ignored.
127
- * @deprecated Whether the AI Assistant is always online. If `true`, `schedule` and `timeZone` are ignored.
128
- * @replacedBy availability
129
- * @targetRemovalDate 2025-12-01
130
- */
102
+ /** Whether the AI Assistant is always online. If `true`, `schedule` and `timeZone` are ignored. */
131
103
  always?: boolean;
132
104
  /** Times at which the AI Assistant is online. */
133
105
  schedule?: Schedule;
@@ -136,8 +108,6 @@ interface ActiveHours {
136
108
  * @maxLength 256
137
109
  */
138
110
  timeZone?: string;
139
- /** Hours when AI assistant or site owner are available. */
140
- mode?: ChatHandlerModeWithLiterals;
141
111
  }
142
112
  /** Schedule */
143
113
  interface Schedule {
@@ -161,7 +131,7 @@ interface DaySchedule {
161
131
  /** Whether the day is enabled. */
162
132
  enabled?: boolean;
163
133
  /**
164
- * Array of times during which the AI Site-Chat or site owner are available.
134
+ * Array of times during which the AI assistant or Wix user are available to respond to messages from site visitors in the site chat.
165
135
  * @maxSize 24
166
136
  */
167
137
  frames?: WorkingHoursFrame[];
@@ -172,43 +142,13 @@ interface WorkingHoursFrame {
172
142
  start?: number;
173
143
  /** End time of the active hours. */
174
144
  end?: number;
175
- /** Who is available during timeframe, AI chat or user chat */
176
- frameType?: FrameHandlerTypeWithLiterals;
177
- }
178
- /** Who is available during timeframe, AI chat or user chat */
179
- declare enum FrameHandlerType {
180
- /** Unknown frame type. */
181
- UNKNOWN_FRAME_TYPE = "UNKNOWN_FRAME_TYPE",
182
- /** Frame type not selected. */
183
- NOT_SELECTED = "NOT_SELECTED",
184
- /** AI Chat available in time frame. */
185
- AI_CHAT = "AI_CHAT",
186
- /** Chat with human in time frame. */
187
- WIX_USER_CHAT = "WIX_USER_CHAT"
188
- }
189
- /** @enumType */
190
- type FrameHandlerTypeWithLiterals = FrameHandlerType | 'UNKNOWN_FRAME_TYPE' | 'NOT_SELECTED' | 'AI_CHAT' | 'WIX_USER_CHAT';
191
- /** Chat availability options */
192
- declare enum ChatHandlerMode {
193
- /** Unknown availability. */
194
- UNKNOWN_MODE = "UNKNOWN_MODE",
195
- /** AI assistant is always available. */
196
- ALWAYS_WITH_AI = "ALWAYS_WITH_AI",
197
- /** Chat with site owner is always available. */
198
- ALWAYS_WITH_WIX_USER = "ALWAYS_WITH_WIX_USER",
199
- /** AI and site owner are available according to schedule. */
200
- SCHEDULED = "SCHEDULED",
201
- /** AI assistant and site owner are always offline. */
202
- OFF = "OFF"
203
145
  }
204
- /** @enumType */
205
- type ChatHandlerModeWithLiterals = ChatHandlerMode | 'UNKNOWN_MODE' | 'ALWAYS_WITH_AI' | 'ALWAYS_WITH_WIX_USER' | 'SCHEDULED' | 'OFF';
206
146
  declare enum OfflineBehavior {
207
147
  /** Unknown offline behavior. */
208
148
  UNKNOWN_OFFLINE_BEHAVIOR = "UNKNOWN_OFFLINE_BEHAVIOR",
209
149
  /** Allows the site visitor to write messages, but doesn't send a contact form. */
210
150
  CHAT_ONLY = "CHAT_ONLY",
211
- /** Hides the AI Site-Chat from the site. */
151
+ /** Hides the AI assistant from the site. */
212
152
  HIDE = "HIDE",
213
153
  /** Doesn't allow the site visitor to write messages, but does send a contact form. */
214
154
  CONTACT_FORM_WITHOUT_CHAT = "CONTACT_FORM_WITHOUT_CHAT",
@@ -222,30 +162,9 @@ interface GetWidgetSettingsRequest {
222
162
  interface GetWidgetSettingsResponse {
223
163
  /** Retrieved widget settings. */
224
164
  widgetSettings?: WidgetSettings;
225
- /**
226
- * Whether the assistant is currently online.
227
- * @readonly
228
- * @deprecated Whether the assistant is currently online.
229
- * @replacedBy active_handlers
230
- * @targetRemovalDate 2025-12-01
231
- */
165
+ /** Whether the assistant is currently online. */
232
166
  assistantOnline?: boolean;
233
- /**
234
- * Active chat handlers (e.g., AI assistant, site owner).
235
- * @readonly
236
- */
237
- activeHandlers?: ChatHandlerWithLiterals[];
238
167
  }
239
- declare enum ChatHandler {
240
- /** Unknown handler. */
241
- UNKNOWN_HANDLER = "UNKNOWN_HANDLER",
242
- /** AI assistant is handling chats. */
243
- AI = "AI",
244
- /** Site owner is handling chats. */
245
- WIX_USER = "WIX_USER"
246
- }
247
- /** @enumType */
248
- type ChatHandlerWithLiterals = ChatHandler | 'UNKNOWN_HANDLER' | 'AI' | 'WIX_USER';
249
168
  interface SetWidgetSettingsRequest {
250
169
  /** Widget settings to update. */
251
170
  widgetSettings: WidgetSettings;
@@ -268,4 +187,4 @@ type __PublicMethodMetaInfo<K = string, M = unknown, T = unknown, S = unknown, Q
268
187
  declare function getWidgetSettings(): __PublicMethodMetaInfo<'GET', {}, GetWidgetSettingsRequest$1, GetWidgetSettingsRequest, GetWidgetSettingsResponse$1, GetWidgetSettingsResponse>;
269
188
  declare function setWidgetSettings(): __PublicMethodMetaInfo<'POST', {}, SetWidgetSettingsRequest$1, SetWidgetSettingsRequest, SetWidgetSettingsResponse$1, SetWidgetSettingsResponse>;
270
189
 
271
- export { type ActiveHours as ActiveHoursOriginal, ChatHandlerMode as ChatHandlerModeOriginal, type ChatHandlerModeWithLiterals as ChatHandlerModeWithLiteralsOriginal, ChatHandler as ChatHandlerOriginal, type ChatHandlerWithLiterals as ChatHandlerWithLiteralsOriginal, type Conditions as ConditionsOriginal, type ContactForm as ContactFormOriginal, type DaySchedule as DayScheduleOriginal, type Fields as FieldsOriginal, FrameHandlerType as FrameHandlerTypeOriginal, type FrameHandlerTypeWithLiterals as FrameHandlerTypeWithLiteralsOriginal, type GetWidgetSettingsRequest as GetWidgetSettingsRequestOriginal, type GetWidgetSettingsResponse as GetWidgetSettingsResponseOriginal, type IntroMessage as IntroMessageOriginal, OfflineBehavior as OfflineBehaviorOriginal, type OfflineBehaviorWithLiterals as OfflineBehaviorWithLiteralsOriginal, type Schedule as ScheduleOriginal, type SetWidgetSettingsRequest as SetWidgetSettingsRequestOriginal, type SetWidgetSettingsResponse as SetWidgetSettingsResponseOriginal, type SettingsMessage as SettingsMessageOriginal, type SuggestedQuestions as SuggestedQuestionsOriginal, type UserConditions as UserConditionsOriginal, type WidgetSettings as WidgetSettingsOriginal, type WorkingHoursFrame as WorkingHoursFrameOriginal, type __PublicMethodMetaInfo, getWidgetSettings, setWidgetSettings };
190
+ export { type ActiveHours as ActiveHoursOriginal, type Conditions as ConditionsOriginal, type ContactForm as ContactFormOriginal, type DaySchedule as DayScheduleOriginal, type Fields as FieldsOriginal, type GetWidgetSettingsRequest as GetWidgetSettingsRequestOriginal, type GetWidgetSettingsResponse as GetWidgetSettingsResponseOriginal, type IntroMessage as IntroMessageOriginal, OfflineBehavior as OfflineBehaviorOriginal, type OfflineBehaviorWithLiterals as OfflineBehaviorWithLiteralsOriginal, type Schedule as ScheduleOriginal, type SetWidgetSettingsRequest as SetWidgetSettingsRequestOriginal, type SetWidgetSettingsResponse as SetWidgetSettingsResponseOriginal, type SettingsMessage as SettingsMessageOriginal, type SuggestedQuestions as SuggestedQuestionsOriginal, type WidgetSettings as WidgetSettingsOriginal, type WorkingHoursFrame as WorkingHoursFrameOriginal, type __PublicMethodMetaInfo, getWidgetSettings, setWidgetSettings };
package/build/es/meta.mjs CHANGED
@@ -139,21 +139,6 @@ function setWidgetSettings(payload) {
139
139
  }
140
140
 
141
141
  // src/innovation-widget-v1-widget-settings-widget-settings.types.ts
142
- var FrameHandlerType = /* @__PURE__ */ ((FrameHandlerType2) => {
143
- FrameHandlerType2["UNKNOWN_FRAME_TYPE"] = "UNKNOWN_FRAME_TYPE";
144
- FrameHandlerType2["NOT_SELECTED"] = "NOT_SELECTED";
145
- FrameHandlerType2["AI_CHAT"] = "AI_CHAT";
146
- FrameHandlerType2["WIX_USER_CHAT"] = "WIX_USER_CHAT";
147
- return FrameHandlerType2;
148
- })(FrameHandlerType || {});
149
- var ChatHandlerMode = /* @__PURE__ */ ((ChatHandlerMode2) => {
150
- ChatHandlerMode2["UNKNOWN_MODE"] = "UNKNOWN_MODE";
151
- ChatHandlerMode2["ALWAYS_WITH_AI"] = "ALWAYS_WITH_AI";
152
- ChatHandlerMode2["ALWAYS_WITH_WIX_USER"] = "ALWAYS_WITH_WIX_USER";
153
- ChatHandlerMode2["SCHEDULED"] = "SCHEDULED";
154
- ChatHandlerMode2["OFF"] = "OFF";
155
- return ChatHandlerMode2;
156
- })(ChatHandlerMode || {});
157
142
  var OfflineBehavior = /* @__PURE__ */ ((OfflineBehavior2) => {
158
143
  OfflineBehavior2["UNKNOWN_OFFLINE_BEHAVIOR"] = "UNKNOWN_OFFLINE_BEHAVIOR";
159
144
  OfflineBehavior2["CHAT_ONLY"] = "CHAT_ONLY";
@@ -162,12 +147,6 @@ var OfflineBehavior = /* @__PURE__ */ ((OfflineBehavior2) => {
162
147
  OfflineBehavior2["CONTACT_FORM_WITH_CHAT"] = "CONTACT_FORM_WITH_CHAT";
163
148
  return OfflineBehavior2;
164
149
  })(OfflineBehavior || {});
165
- var ChatHandler = /* @__PURE__ */ ((ChatHandler2) => {
166
- ChatHandler2["UNKNOWN_HANDLER"] = "UNKNOWN_HANDLER";
167
- ChatHandler2["AI"] = "AI";
168
- ChatHandler2["WIX_USER"] = "WIX_USER";
169
- return ChatHandler2;
170
- })(ChatHandler || {});
171
150
 
172
151
  // src/innovation-widget-v1-widget-settings-widget-settings.meta.ts
173
152
  function getWidgetSettings2() {
@@ -207,9 +186,6 @@ function setWidgetSettings2() {
207
186
  };
208
187
  }
209
188
  export {
210
- ChatHandlerMode as ChatHandlerModeOriginal,
211
- ChatHandler as ChatHandlerOriginal,
212
- FrameHandlerType as FrameHandlerTypeOriginal,
213
189
  OfflineBehavior as OfflineBehaviorOriginal,
214
190
  getWidgetSettings2 as getWidgetSettings,
215
191
  setWidgetSettings2 as setWidgetSettings