@encatch/schema 1.1.0-beta.13 → 1.1.0-beta.15
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/esm/index.js +287 -144
- package/dist/esm/index.js.map +4 -4
- package/dist/types/index.d.ts +1 -0
- package/dist/types/schemas/api/fetch-feedback-schema.d.ts +1142 -0
- package/dist/types/schemas/fields/form-properties-schema.d.ts +2285 -0
- package/dist/types/schemas/fields/layout-schema.d.ts +1203 -0
- package/package.json +1 -1
package/dist/esm/index.js
CHANGED
|
@@ -929,7 +929,7 @@ var feedbackConfigurationSchema = z4.object({
|
|
|
929
929
|
}).describe("Schema defining feedback configuration properties");
|
|
930
930
|
|
|
931
931
|
// src/schemas/fields/form-properties-schema.ts
|
|
932
|
-
import { z as
|
|
932
|
+
import { z as z9 } from "zod";
|
|
933
933
|
|
|
934
934
|
// src/schemas/fields/other-screen-schema.ts
|
|
935
935
|
import { z as z5 } from "zod";
|
|
@@ -1113,30 +1113,158 @@ var audienceTriggerPropertiesSchema = z7.object({
|
|
|
1113
1113
|
}
|
|
1114
1114
|
).describe("Schema defining audience trigger properties for form targeting");
|
|
1115
1115
|
|
|
1116
|
+
// src/schemas/fields/layout-schema.ts
|
|
1117
|
+
import { z as z8 } from "zod";
|
|
1118
|
+
var focalPointSchema = z8.object({
|
|
1119
|
+
x: z8.number().min(-1).max(1).describe("Horizontal focal point from -1 (far left) to 1 (far right)"),
|
|
1120
|
+
y: z8.number().min(-1).max(1).describe("Vertical focal point from -1 (top) to 1 (bottom)")
|
|
1121
|
+
}).describe("Focal point for image cropping and positioning within its container");
|
|
1122
|
+
var imageAttachmentSchema = z8.object({
|
|
1123
|
+
type: z8.literal("image"),
|
|
1124
|
+
href: z8.string().url().describe("URL of the image asset"),
|
|
1125
|
+
properties: z8.object({
|
|
1126
|
+
description: z8.string().optional().describe("Accessible description of the image (used as alt text when decorative is false)"),
|
|
1127
|
+
decorative: z8.boolean().default(false).describe(
|
|
1128
|
+
"When true the image is purely visual; screen readers skip it and description is not surfaced as alt text"
|
|
1129
|
+
),
|
|
1130
|
+
brightness: z8.number().min(-100).max(100).optional().describe("Brightness adjustment: -100 darkest, 0 unchanged, +100 brightest. Applied as filter: brightness(1 + value/100)."),
|
|
1131
|
+
focalPoint: focalPointSchema.optional()
|
|
1132
|
+
}).optional().describe("Optional display properties for the image")
|
|
1133
|
+
}).describe("Image attachment for section layouts");
|
|
1134
|
+
var videoAttachmentSchema = z8.object({
|
|
1135
|
+
type: z8.literal("video"),
|
|
1136
|
+
href: z8.string().url().describe(
|
|
1137
|
+
"URL of the video \u2014 YouTube, Vimeo, Pexels, or self-hosted CDN"
|
|
1138
|
+
),
|
|
1139
|
+
scale: z8.enum(["0.4", "0.6", "0.8", "1"]).default("0.6").optional().describe("Responsive scale for the video within its container"),
|
|
1140
|
+
properties: z8.object({
|
|
1141
|
+
description: z8.string().optional().describe("Accessible description of the video"),
|
|
1142
|
+
decorative: z8.boolean().default(false).describe("When true the video is purely decorative and screen readers skip it"),
|
|
1143
|
+
brightness: z8.number().min(-100).max(100).optional().describe("Brightness adjustment: -100 darkest, 0 unchanged, +100 brightest. Applied as filter: brightness(1 + value/100).")
|
|
1144
|
+
}).optional().describe("Optional display properties for the video")
|
|
1145
|
+
}).describe("Video attachment for section layouts (external embed or self-hosted CDN)");
|
|
1146
|
+
var colorAttachmentSchema = z8.object({
|
|
1147
|
+
type: z8.literal("color"),
|
|
1148
|
+
value: z8.string().regex(
|
|
1149
|
+
/^#([0-9A-Fa-f]{3}|[0-9A-Fa-f]{6}|[0-9A-Fa-f]{8})$/,
|
|
1150
|
+
"Must be a valid hex color: #RGB, #RRGGBB, or #RRGGBBAA"
|
|
1151
|
+
).describe("Hex color value e.g. #FF5733 (opaque) or #FF5733CC (with alpha)")
|
|
1152
|
+
}).describe("Solid color background attachment for section layouts");
|
|
1153
|
+
var gradientAttachmentSchema = z8.object({
|
|
1154
|
+
type: z8.literal("gradient"),
|
|
1155
|
+
value: z8.string().min(1).describe(
|
|
1156
|
+
"CSS gradient string e.g. linear-gradient(135deg, #FF5733, #3498db) or radial-gradient(circle, #FF5733, #3498db)"
|
|
1157
|
+
)
|
|
1158
|
+
}).describe("CSS gradient background attachment for section layouts");
|
|
1159
|
+
var layoutAttachmentSchema = z8.discriminatedUnion("type", [
|
|
1160
|
+
imageAttachmentSchema,
|
|
1161
|
+
videoAttachmentSchema,
|
|
1162
|
+
colorAttachmentSchema,
|
|
1163
|
+
gradientAttachmentSchema
|
|
1164
|
+
]).describe(
|
|
1165
|
+
"Attachment used in a section layout \u2014 image, video, solid color, or gradient"
|
|
1166
|
+
);
|
|
1167
|
+
var LayoutAttachmentTypes = {
|
|
1168
|
+
IMAGE: "image",
|
|
1169
|
+
VIDEO: "video",
|
|
1170
|
+
COLOR: "color",
|
|
1171
|
+
GRADIENT: "gradient"
|
|
1172
|
+
};
|
|
1173
|
+
var stackLayoutSchema = z8.object({
|
|
1174
|
+
type: z8.literal("stack"),
|
|
1175
|
+
align: z8.enum(["left", "center", "cover"]).default("center").optional().describe(
|
|
1176
|
+
"How the media strip is displayed: 'center' (default, natural size centred at form width), 'left' (natural size left-aligned), 'cover' (full-bleed, fills strip edge-to-edge)"
|
|
1177
|
+
),
|
|
1178
|
+
attachment: layoutAttachmentSchema.optional().describe("Background media rendered behind the question content")
|
|
1179
|
+
}).describe(
|
|
1180
|
+
"Stack layout: attachment renders as a full-bleed background behind the question"
|
|
1181
|
+
);
|
|
1182
|
+
var floatLayoutSchema = z8.object({
|
|
1183
|
+
type: z8.literal("float"),
|
|
1184
|
+
placement: z8.enum(["left", "right"]).describe("Side the media floats on"),
|
|
1185
|
+
attachment: layoutAttachmentSchema.optional().describe("Media that floats beside the question content")
|
|
1186
|
+
}).describe(
|
|
1187
|
+
"Float layout: attachment floats to the left or right of the question content"
|
|
1188
|
+
);
|
|
1189
|
+
var splitLayoutSchema = z8.object({
|
|
1190
|
+
type: z8.literal("split"),
|
|
1191
|
+
placement: z8.enum(["left", "right"]).describe("Side the media occupies in the split"),
|
|
1192
|
+
attachment: layoutAttachmentSchema.optional().describe("Media that occupies its half of the split viewport")
|
|
1193
|
+
}).describe(
|
|
1194
|
+
"Split layout: viewport is divided equally between media and question content"
|
|
1195
|
+
);
|
|
1196
|
+
var wallpaperLayoutSchema = z8.object({
|
|
1197
|
+
type: z8.literal("wallpaper"),
|
|
1198
|
+
attachment: layoutAttachmentSchema.optional().describe("Full-page background media")
|
|
1199
|
+
}).describe(
|
|
1200
|
+
"Wallpaper layout: attachment stretches or tiles across the entire viewport"
|
|
1201
|
+
);
|
|
1202
|
+
var sectionLayoutVariantSchema = z8.discriminatedUnion("type", [
|
|
1203
|
+
stackLayoutSchema,
|
|
1204
|
+
floatLayoutSchema,
|
|
1205
|
+
splitLayoutSchema,
|
|
1206
|
+
wallpaperLayoutSchema
|
|
1207
|
+
]).describe(
|
|
1208
|
+
"Layout variant controlling how attachment is rendered relative to the question"
|
|
1209
|
+
);
|
|
1210
|
+
var LayoutTypes = {
|
|
1211
|
+
STACK: "stack",
|
|
1212
|
+
FLOAT: "float",
|
|
1213
|
+
SPLIT: "split",
|
|
1214
|
+
WALLPAPER: "wallpaper"
|
|
1215
|
+
};
|
|
1216
|
+
var layoutSurfaceSchema = z8.object({
|
|
1217
|
+
attachment: layoutAttachmentSchema.optional().describe(
|
|
1218
|
+
"Top-level media displayed inline with the question (separate from the layout's own attachment)"
|
|
1219
|
+
),
|
|
1220
|
+
layout: sectionLayoutVariantSchema.describe(
|
|
1221
|
+
"How the attachment is positioned relative to the question content"
|
|
1222
|
+
)
|
|
1223
|
+
}).describe("Layout configuration for a single rendering surface");
|
|
1224
|
+
var sectionLayoutSchema = z8.object({
|
|
1225
|
+
inApp: layoutSurfaceSchema.optional().describe("Layout for in-app (native/webview) surfaces"),
|
|
1226
|
+
link: z8.object({
|
|
1227
|
+
mobile: layoutSurfaceSchema.optional().describe("Layout for link-based forms on mobile viewports (phones)"),
|
|
1228
|
+
others: layoutSurfaceSchema.optional().describe(
|
|
1229
|
+
"Layout for link-based forms on tablet and desktop viewports"
|
|
1230
|
+
)
|
|
1231
|
+
}).optional().describe(
|
|
1232
|
+
"Layout overrides for link/shareable surfaces, split by mobile and others (tablet + desktop)"
|
|
1233
|
+
)
|
|
1234
|
+
}).describe(
|
|
1235
|
+
"Per-section layout configuration scoped to in-app and link surfaces"
|
|
1236
|
+
);
|
|
1237
|
+
|
|
1116
1238
|
// src/schemas/fields/form-properties-schema.ts
|
|
1117
|
-
var otherConfigurationPropertiesSchema =
|
|
1239
|
+
var otherConfigurationPropertiesSchema = z9.discriminatedUnion("isEnabled", [
|
|
1118
1240
|
// When other configuration is disabled
|
|
1119
|
-
|
|
1120
|
-
isEnabled:
|
|
1241
|
+
z9.object({
|
|
1242
|
+
isEnabled: z9.literal(false).describe("Whether other configuration properties are enabled"),
|
|
1121
1243
|
otherFields: OtherFieldsSchema.describe("Other form configuration fields including buttons and display options"),
|
|
1122
|
-
translations:
|
|
1244
|
+
translations: z9.record(z9.string(), OtherFieldsTranslationSchema).optional().describe("Translations for other configuration field labels and buttons keyed by language code")
|
|
1123
1245
|
}),
|
|
1124
1246
|
// When other configuration is enabled
|
|
1125
|
-
|
|
1126
|
-
isEnabled:
|
|
1247
|
+
z9.object({
|
|
1248
|
+
isEnabled: z9.literal(true).describe("Whether other configuration properties are enabled"),
|
|
1127
1249
|
otherFields: OtherFieldsSchema.describe("Other form configuration fields including buttons and display options"),
|
|
1128
|
-
translations:
|
|
1250
|
+
translations: z9.record(z9.string(), OtherFieldsTranslationSchema).describe("Translations for other configuration field labels and buttons keyed by language code")
|
|
1129
1251
|
})
|
|
1130
1252
|
]).describe("Schema for other configuration properties including fields and translations");
|
|
1131
|
-
var appearancePropertiesSchema =
|
|
1132
|
-
themeConfiguration: themeConfigurationSchema.describe("Theme configuration including colors, features, and positioning")
|
|
1133
|
-
|
|
1134
|
-
|
|
1135
|
-
|
|
1253
|
+
var appearancePropertiesSchema = z9.object({
|
|
1254
|
+
themeConfiguration: themeConfigurationSchema.describe("Theme configuration including colors, features, and positioning"),
|
|
1255
|
+
sectionLayoutDefaults: sectionLayoutSchema.optional().describe(
|
|
1256
|
+
"Default layout applied to sections that have no explicit entry in sectionLayouts. Resolved independently per surface (inApp, link.mobile, link.others)"
|
|
1257
|
+
),
|
|
1258
|
+
sectionLayouts: z9.record(z9.string(), sectionLayoutSchema).optional().describe(
|
|
1259
|
+
"Per-section layout overrides keyed by section id. Takes precedence over sectionLayoutDefaults. Omit a section to fall back to sectionLayoutDefaults or engine default"
|
|
1260
|
+
)
|
|
1261
|
+
}).describe("Schema for appearance properties including theme configuration and per-section layouts");
|
|
1262
|
+
var formPropertiesSchema = z9.object({
|
|
1263
|
+
feedbackConfigurationId: z9.uuid().describe("Unique identifier for the feedback configuration"),
|
|
1136
1264
|
feedbackConfiguration: feedbackConfigurationSchema.describe("Configuration properties for the feedback form"),
|
|
1137
|
-
questionnaireFields:
|
|
1138
|
-
questions:
|
|
1139
|
-
sections:
|
|
1265
|
+
questionnaireFields: z9.object({
|
|
1266
|
+
questions: z9.record(z9.string(), combinedQuestionSchema).describe("Collection of questions keyed by their string identifiers"),
|
|
1267
|
+
sections: z9.array(sectionSchema).describe("Array of sections that organize questions into logical groups"),
|
|
1140
1268
|
selectedLanguages: LanguagesSchema.describe("Array of languages selected for this questionnaire"),
|
|
1141
1269
|
translations: translationsSchema.describe("Multi-language translations for questions and form content")
|
|
1142
1270
|
}).describe("Fields defining the questionnaire structure, questions, sections, selected languages, and translations"),
|
|
@@ -1147,91 +1275,91 @@ var formPropertiesSchema = z8.object({
|
|
|
1147
1275
|
}).describe("Complete schema for all feedback-level properties including publishing, audience targeting, configuration, and appearance");
|
|
1148
1276
|
|
|
1149
1277
|
// src/schemas/fields/other-properties-schema.ts
|
|
1150
|
-
import { z as
|
|
1151
|
-
var masterPropertiesSchema =
|
|
1152
|
-
mandatoryFetchConfigAtPaths:
|
|
1153
|
-
configSyncIntervalSeconds:
|
|
1154
|
-
disableAllSurvey:
|
|
1155
|
-
feedbackIntervalDuration:
|
|
1278
|
+
import { z as z10 } from "zod";
|
|
1279
|
+
var masterPropertiesSchema = z10.object({
|
|
1280
|
+
mandatoryFetchConfigAtPaths: z10.array(z10.string()).describe("Array of paths where configuration must be fetched from server when navigated by user"),
|
|
1281
|
+
configSyncIntervalSeconds: z10.number().int().positive().describe("Interval in seconds for configuration synchronization between client and server"),
|
|
1282
|
+
disableAllSurvey: z10.boolean().describe("Flag to disable all surveys globally"),
|
|
1283
|
+
feedbackIntervalDuration: z10.number().int().positive().describe("Duration in seconds for feedback interval between two auto triggered feedbacks")
|
|
1156
1284
|
}).describe("Master properties configuration for global survey settings");
|
|
1157
1285
|
|
|
1158
1286
|
// src/schemas/api/other-schema.ts
|
|
1159
|
-
import { z as
|
|
1160
|
-
var deviceThemeSchema =
|
|
1287
|
+
import { z as z11 } from "zod";
|
|
1288
|
+
var deviceThemeSchema = z11.enum(["light", "dark", "system"]).describe("Enumeration of supported theme modes");
|
|
1161
1289
|
var DeviceThemes = {
|
|
1162
1290
|
LIGHT: "light",
|
|
1163
1291
|
DARK: "dark",
|
|
1164
1292
|
SYSTEM: "system"
|
|
1165
1293
|
};
|
|
1166
|
-
var deviceInfoSchema =
|
|
1167
|
-
$deviceType:
|
|
1168
|
-
$timezone:
|
|
1294
|
+
var deviceInfoSchema = z11.object({
|
|
1295
|
+
$deviceType: z11.string().describe("Type of device being used"),
|
|
1296
|
+
$timezone: z11.string().describe("Device timezone (e.g., 'Asia/Calcutta')"),
|
|
1169
1297
|
$theme: deviceThemeSchema.describe("Current theme mode preference"),
|
|
1170
|
-
$os:
|
|
1171
|
-
$osVersion:
|
|
1172
|
-
$appVersion:
|
|
1173
|
-
$app:
|
|
1174
|
-
$language:
|
|
1175
|
-
$deviceId:
|
|
1298
|
+
$os: z11.string().describe("Operating system running on the device"),
|
|
1299
|
+
$osVersion: z11.string().describe("Version of the operating system"),
|
|
1300
|
+
$appVersion: z11.string().describe("Version of the application"),
|
|
1301
|
+
$app: z11.string().describe("Browser or application being used"),
|
|
1302
|
+
$language: z11.string().describe("Language preference (e.g., 'en-GB')"),
|
|
1303
|
+
$deviceId: z11.string().describe("Unique device identifier")
|
|
1176
1304
|
}).describe("Device information collected from the client");
|
|
1177
|
-
var sessionInfoSchema =
|
|
1178
|
-
$sessionId:
|
|
1179
|
-
$timestamp:
|
|
1305
|
+
var sessionInfoSchema = z11.object({
|
|
1306
|
+
$sessionId: z11.string().uuid().describe("Unique session identifier"),
|
|
1307
|
+
$timestamp: z11.string().optional().describe("ISO timestamp of the session")
|
|
1180
1308
|
}).describe("Session information for tracking user sessions");
|
|
1181
|
-
var deviceSessionInfoSchema =
|
|
1309
|
+
var deviceSessionInfoSchema = z11.object({
|
|
1182
1310
|
deviceInfo: deviceInfoSchema.describe("Device information"),
|
|
1183
1311
|
sessionInfo: sessionInfoSchema.describe("Session information")
|
|
1184
1312
|
}).describe("Combined device and session information");
|
|
1185
|
-
var userPropertiesSchema =
|
|
1186
|
-
$counter:
|
|
1313
|
+
var userPropertiesSchema = z11.object({
|
|
1314
|
+
$counter: z11.record(z11.string(), z11.number().int()).describe(
|
|
1187
1315
|
"Counter properties for user tracking (can be positive or negative)"
|
|
1188
1316
|
).optional(),
|
|
1189
|
-
$set:
|
|
1190
|
-
$setOnce:
|
|
1317
|
+
$set: z11.record(z11.string(), z11.any()).describe("Properties to set for the user").optional(),
|
|
1318
|
+
$setOnce: z11.record(z11.string(), z11.any()).describe(
|
|
1191
1319
|
"Properties to set once for the user (won't overwrite existing values)"
|
|
1192
1320
|
).optional(),
|
|
1193
|
-
$unset:
|
|
1321
|
+
$unset: z11.array(z11.string()).describe("Array of property names to unset/remove from the user").optional()
|
|
1194
1322
|
}).loose().describe(
|
|
1195
1323
|
"User properties including counters, set operations, and other dynamic data"
|
|
1196
1324
|
);
|
|
1197
|
-
var userInfoSchema =
|
|
1198
|
-
userName:
|
|
1325
|
+
var userInfoSchema = z11.object({
|
|
1326
|
+
userName: z11.string().email().describe("User's email address as username"),
|
|
1199
1327
|
properties: userPropertiesSchema.describe("User properties and counters")
|
|
1200
1328
|
}).describe("User information including identification and properties");
|
|
1201
1329
|
|
|
1202
1330
|
// src/schemas/api/submit-feedback-schema.ts
|
|
1203
|
-
import { z as
|
|
1204
|
-
var formConfigSchema =
|
|
1205
|
-
feedbackIdentifier:
|
|
1206
|
-
feedbackConfigurationId:
|
|
1207
|
-
completionTimeInSeconds:
|
|
1208
|
-
isPartialSubmit:
|
|
1209
|
-
responseLanguageCode:
|
|
1331
|
+
import { z as z12 } from "zod";
|
|
1332
|
+
var formConfigSchema = z12.object({
|
|
1333
|
+
feedbackIdentifier: z12.string().uuid().describe("Unique identifier for the feedback instance"),
|
|
1334
|
+
feedbackConfigurationId: z12.string().uuid().describe("Unique identifier for the feedback configuration"),
|
|
1335
|
+
completionTimeInSeconds: z12.number().int().min(0).describe("Time taken to complete the feedback in seconds"),
|
|
1336
|
+
isPartialSubmit: z12.boolean().describe("Whether this is a partial submission (true) or full submission (false)"),
|
|
1337
|
+
responseLanguageCode: z12.string().length(2).describe("Language code for the response (e.g., 'en', 'es')")
|
|
1210
1338
|
}).describe("Configuration information for the feedback form");
|
|
1211
|
-
var questionResponseSchema =
|
|
1212
|
-
questionId:
|
|
1339
|
+
var questionResponseSchema = z12.object({
|
|
1340
|
+
questionId: z12.string().uuid().describe("Unique identifier for the question"),
|
|
1213
1341
|
answer: AnswerSchema.describe("The answer provided for this question"),
|
|
1214
|
-
type:
|
|
1215
|
-
error:
|
|
1216
|
-
isOnPath:
|
|
1342
|
+
type: z12.string().describe("Type of the question (e.g., 'rating', 'single_choice')"),
|
|
1343
|
+
error: z12.string().optional().describe("Error message if any validation failed"),
|
|
1344
|
+
isOnPath: z12.boolean().optional().describe(
|
|
1217
1345
|
"When present, whether this question was on the respondent's navigation path (e.g. logic jumps); false for questions not reached"
|
|
1218
1346
|
),
|
|
1219
|
-
timeSpentMs:
|
|
1347
|
+
timeSpentMs: z12.number().int().min(0).optional().describe(
|
|
1220
1348
|
"Milliseconds the respondent spent on this question (even split across all visible questions in the section)"
|
|
1221
1349
|
),
|
|
1222
|
-
isPathTraversed:
|
|
1350
|
+
isPathTraversed: z12.boolean().optional().describe(
|
|
1223
1351
|
"Whether this question was on the logical traversal path \u2014 true for visible questions and hidden questions whose rules were evaluated, false for questions never reached"
|
|
1224
1352
|
)
|
|
1225
1353
|
}).describe("Response to a specific question in the feedback form");
|
|
1226
|
-
var responseSchema =
|
|
1227
|
-
questions:
|
|
1354
|
+
var responseSchema = z12.object({
|
|
1355
|
+
questions: z12.array(questionResponseSchema).min(1).describe("Array of question responses")
|
|
1228
1356
|
}).describe("User responses to feedback questions");
|
|
1229
|
-
var matchedTriggerPropertiesSchema =
|
|
1230
|
-
customEventName:
|
|
1231
|
-
currentPath:
|
|
1232
|
-
eventType:
|
|
1357
|
+
var matchedTriggerPropertiesSchema = z12.object({
|
|
1358
|
+
customEventName: z12.string().nullable().describe("Custom event name that triggered the feedback"),
|
|
1359
|
+
currentPath: z12.string().describe("Current page path where feedback was triggered"),
|
|
1360
|
+
eventType: z12.string().describe("Type of event that triggered the feedback")
|
|
1233
1361
|
}).passthrough().describe("Properties of the trigger that matched for this feedback");
|
|
1234
|
-
var baseSubmitFeedbackSchema =
|
|
1362
|
+
var baseSubmitFeedbackSchema = z12.object({
|
|
1235
1363
|
formConfig: formConfigSchema.describe("Form configuration information"),
|
|
1236
1364
|
deviceInfo: deviceInfoSchema.describe("Device information"),
|
|
1237
1365
|
sessionInfo: sessionInfoSchema.optional().describe("Session information"),
|
|
@@ -1239,70 +1367,70 @@ var baseSubmitFeedbackSchema = z11.object({
|
|
|
1239
1367
|
matchedTriggerProperties: matchedTriggerPropertiesSchema.optional().describe(
|
|
1240
1368
|
"Properties of the matched trigger"
|
|
1241
1369
|
),
|
|
1242
|
-
customProperties:
|
|
1370
|
+
customProperties: z12.record(z12.string(), z12.unknown()).optional().describe("Custom properties for advanced use cases")
|
|
1243
1371
|
}).describe("Base submit feedback request schema");
|
|
1244
1372
|
var partialFeedbackSchema = baseSubmitFeedbackSchema.extend({
|
|
1245
1373
|
formConfig: formConfigSchema.extend({
|
|
1246
|
-
isPartialSubmit:
|
|
1374
|
+
isPartialSubmit: z12.literal(true).describe("Indicates this is a partial submission")
|
|
1247
1375
|
}),
|
|
1248
1376
|
response: responseSchema.optional().describe("User responses (optional for partial submit)")
|
|
1249
1377
|
}).describe("Partial feedback request schema (response optional)");
|
|
1250
1378
|
var submitFeedbackSchema = baseSubmitFeedbackSchema.extend({
|
|
1251
1379
|
formConfig: formConfigSchema.extend({
|
|
1252
|
-
isPartialSubmit:
|
|
1380
|
+
isPartialSubmit: z12.literal(false).describe("Indicates this is a full submission")
|
|
1253
1381
|
}),
|
|
1254
1382
|
response: responseSchema.describe("User responses (required for full submit)")
|
|
1255
1383
|
}).describe("Full submit feedback request schema (response required)");
|
|
1256
|
-
var feedbackRequestSchema =
|
|
1384
|
+
var feedbackRequestSchema = z12.union([partialFeedbackSchema, submitFeedbackSchema]).describe("Union schema for both partial and full feedback submissions");
|
|
1257
1385
|
|
|
1258
1386
|
// src/schemas/api/fetch-feedback-schema.ts
|
|
1259
|
-
import { z as
|
|
1260
|
-
var feedbackConfigurationItemSchema =
|
|
1261
|
-
feedbackConfigurationId:
|
|
1262
|
-
feedbackTitle:
|
|
1387
|
+
import { z as z13 } from "zod";
|
|
1388
|
+
var feedbackConfigurationItemSchema = z13.object({
|
|
1389
|
+
feedbackConfigurationId: z13.string().uuid().describe("Unique identifier for the feedback configuration"),
|
|
1390
|
+
feedbackTitle: z13.string().describe("Title of the feedback configuration"),
|
|
1263
1391
|
// duration: durationSchema
|
|
1264
1392
|
// .describe("Active duration for this feedback configuration"),
|
|
1265
1393
|
triggerProperties: audienceTriggerPropertiesSchema.describe(
|
|
1266
1394
|
"Trigger properties including auto/manual settings and audience segments"
|
|
1267
1395
|
),
|
|
1268
|
-
appearanceProperties:
|
|
1269
|
-
themes:
|
|
1270
|
-
light:
|
|
1271
|
-
theme:
|
|
1396
|
+
appearanceProperties: z13.object({
|
|
1397
|
+
themes: z13.object({
|
|
1398
|
+
light: z13.object({
|
|
1399
|
+
theme: z13.string().optional().describe("Theme for light mode (shadcn variables JSON)")
|
|
1272
1400
|
}).describe("Light theme"),
|
|
1273
|
-
dark:
|
|
1274
|
-
theme:
|
|
1401
|
+
dark: z13.object({
|
|
1402
|
+
theme: z13.string().optional().describe("Theme for dark mode (shadcn variables JSON)")
|
|
1275
1403
|
}).describe("Dark theme")
|
|
1276
1404
|
}).nullable().optional().describe("Theme configuration (optional)"),
|
|
1277
|
-
featureSettings:
|
|
1278
|
-
darkOverlay:
|
|
1279
|
-
closeButton:
|
|
1280
|
-
progressBar:
|
|
1281
|
-
showBranding:
|
|
1282
|
-
customPosition:
|
|
1283
|
-
customIconPosition:
|
|
1284
|
-
customCss:
|
|
1285
|
-
enableShareableKeyboardNavigation:
|
|
1405
|
+
featureSettings: z13.object({
|
|
1406
|
+
darkOverlay: z13.boolean().describe("Whether to show dark overlay"),
|
|
1407
|
+
closeButton: z13.boolean().describe("Whether to show close button"),
|
|
1408
|
+
progressBar: z13.boolean().describe("Whether to show progress bar"),
|
|
1409
|
+
showBranding: z13.boolean().describe("Whether to show branding"),
|
|
1410
|
+
customPosition: z13.boolean().describe("Whether custom position is enabled"),
|
|
1411
|
+
customIconPosition: z13.boolean().describe("Whether custom icon position is enabled"),
|
|
1412
|
+
customCss: z13.string().nullable().optional().describe("Custom CSS link (optional)"),
|
|
1413
|
+
enableShareableKeyboardNavigation: z13.boolean().default(false).describe(
|
|
1286
1414
|
"Whether keyboard navigation is enabled for the shareable widget experience"
|
|
1287
1415
|
),
|
|
1288
|
-
rtl:
|
|
1289
|
-
previousButton:
|
|
1416
|
+
rtl: z13.boolean().describe("Whether right-to-left text direction is enabled"),
|
|
1417
|
+
previousButton: z13.enum(["never", "always"]).describe("Previous button: never (hidden) or always (shown)")
|
|
1290
1418
|
}).describe("Feature settings for the feedback form"),
|
|
1291
|
-
selectedIconPosition:
|
|
1292
|
-
selectedPosition:
|
|
1419
|
+
selectedIconPosition: z13.string().describe("Selected position for the feedback icon"),
|
|
1420
|
+
selectedPosition: z13.string().describe("Selected position for the feedback form")
|
|
1293
1421
|
}).describe("Appearance properties for the feedback form")
|
|
1294
1422
|
}).describe("Individual feedback configuration item in the list");
|
|
1295
|
-
var fetchFormConfigSchema =
|
|
1296
|
-
feedbackConfigurationId:
|
|
1297
|
-
responseLanguageCode:
|
|
1423
|
+
var fetchFormConfigSchema = z13.object({
|
|
1424
|
+
feedbackConfigurationId: z13.string().uuid().describe("Unique identifier for the feedback configuration"),
|
|
1425
|
+
responseLanguageCode: z13.string().length(2).describe("Language code for the response (e.g., 'en', 'es')")
|
|
1298
1426
|
}).describe("Form configuration for fetching feedback details");
|
|
1299
|
-
var fetchConfigurationListSchema =
|
|
1427
|
+
var fetchConfigurationListSchema = z13.object({
|
|
1300
1428
|
deviceInfo: deviceInfoSchema.describe("Device information"),
|
|
1301
1429
|
sessionInfo: sessionInfoSchema.describe("Session information"),
|
|
1302
1430
|
userInfo: userInfoSchema.optional().describe("User information (optional)"),
|
|
1303
|
-
force:
|
|
1431
|
+
force: z13.boolean().optional().describe("Forcefully fetch eligible feedback list (optional)")
|
|
1304
1432
|
}).strict().describe("Request schema for fetching available feedback configurations");
|
|
1305
|
-
var fetchFeedbackDetailsSchema =
|
|
1433
|
+
var fetchFeedbackDetailsSchema = z13.object({
|
|
1306
1434
|
formConfig: fetchFormConfigSchema.describe(
|
|
1307
1435
|
"Form configuration for the specific feedback"
|
|
1308
1436
|
),
|
|
@@ -1310,40 +1438,40 @@ var fetchFeedbackDetailsSchema = z12.object({
|
|
|
1310
1438
|
sessionInfo: sessionInfoSchema.describe("Session information"),
|
|
1311
1439
|
userInfo: userInfoSchema.optional().describe("User information (optional)")
|
|
1312
1440
|
}).strict().describe("Request schema for fetching specific feedback form details");
|
|
1313
|
-
var formConfigurationResponseSchema =
|
|
1314
|
-
formTitle:
|
|
1315
|
-
formDescription:
|
|
1441
|
+
var formConfigurationResponseSchema = z13.object({
|
|
1442
|
+
formTitle: z13.string().describe("Title of the feedback form"),
|
|
1443
|
+
formDescription: z13.string().describe("Description of the feedback form")
|
|
1316
1444
|
}).describe("Form configuration response with title and description");
|
|
1317
|
-
var logicJumpRuleSchema =
|
|
1318
|
-
jsonLogic:
|
|
1319
|
-
targetQuestionId:
|
|
1445
|
+
var logicJumpRuleSchema = z13.object({
|
|
1446
|
+
jsonLogic: z13.record(z13.string(), z13.unknown()).describe("JSON Logic expression to evaluate"),
|
|
1447
|
+
targetQuestionId: z13.string().describe("Question ID to navigate to when this rule matches")
|
|
1320
1448
|
}).describe("A single logic jump rule mapping a condition to a target question");
|
|
1321
|
-
var logicJumpRulesSchema =
|
|
1322
|
-
|
|
1323
|
-
|
|
1449
|
+
var logicJumpRulesSchema = z13.record(
|
|
1450
|
+
z13.string(),
|
|
1451
|
+
z13.array(logicJumpRuleSchema)
|
|
1324
1452
|
).describe(
|
|
1325
1453
|
"Logic jump rules keyed by question ID (or '__workflow_start__'). Each entry is an ordered array of rules evaluated top-down; the first matching rule wins."
|
|
1326
1454
|
);
|
|
1327
|
-
var questionnaireFieldsResponseSchema =
|
|
1328
|
-
questions:
|
|
1329
|
-
sections:
|
|
1455
|
+
var questionnaireFieldsResponseSchema = z13.object({
|
|
1456
|
+
questions: z13.record(z13.string(), combinedQuestionSchema).describe("Collection of questions keyed by their string identifiers"),
|
|
1457
|
+
sections: z13.array(sectionSchema).describe(
|
|
1330
1458
|
"Array of sections that organize questions into logical groups"
|
|
1331
1459
|
),
|
|
1332
|
-
translations:
|
|
1460
|
+
translations: z13.record(z13.string(), z13.any()).describe(
|
|
1333
1461
|
"Translations object (can be empty or contain language-specific translations)"
|
|
1334
1462
|
),
|
|
1335
1463
|
selectedLanguages: LanguagesSchema.describe(
|
|
1336
1464
|
"Array of languages selected for this questionnaire"
|
|
1337
1465
|
),
|
|
1338
|
-
isLogicJumpsEnabled:
|
|
1466
|
+
isLogicJumpsEnabled: z13.boolean().optional().default(false).describe("When true, form navigation follows logicJumpRules instead of linear section order"),
|
|
1339
1467
|
logicJumpRules: logicJumpRulesSchema.optional().describe("Conditional navigation rules evaluated per question to determine the next question to show"),
|
|
1340
|
-
contextVariables:
|
|
1468
|
+
contextVariables: z13.array(z13.string()).optional().describe("List of context variable keys expected by the form (informational)")
|
|
1341
1469
|
}).describe(
|
|
1342
1470
|
"Questionnaire fields response including questions, sections, translations, selected languages, and optional logic jump configuration"
|
|
1343
1471
|
);
|
|
1344
|
-
var fetchFeedbackDetailsResponseSchema =
|
|
1345
|
-
feedbackConfigurationId:
|
|
1346
|
-
feedbackIdentifier:
|
|
1472
|
+
var fetchFeedbackDetailsResponseSchema = z13.object({
|
|
1473
|
+
feedbackConfigurationId: z13.string().uuid().describe("Unique identifier for the feedback configuration"),
|
|
1474
|
+
feedbackIdentifier: z13.string().uuid().describe("Unique identifier for this specific feedback instance"),
|
|
1347
1475
|
formConfiguration: formConfigurationResponseSchema.describe(
|
|
1348
1476
|
"Form configuration with title and description"
|
|
1349
1477
|
),
|
|
@@ -1359,30 +1487,30 @@ var fetchFeedbackDetailsResponseSchema = z12.object({
|
|
|
1359
1487
|
}).strict().describe(
|
|
1360
1488
|
"Complete response schema for fetchFeedbackDetails API using existing field schemas"
|
|
1361
1489
|
);
|
|
1362
|
-
var fetchConfigurationListResponseSchema =
|
|
1490
|
+
var fetchConfigurationListResponseSchema = z13.object({
|
|
1363
1491
|
masterProperties: masterPropertiesSchema.describe(
|
|
1364
1492
|
"Master properties for global survey settings"
|
|
1365
1493
|
),
|
|
1366
|
-
feedbackConfiguration:
|
|
1494
|
+
feedbackConfiguration: z13.array(feedbackConfigurationItemSchema).describe("Array of available feedback configurations")
|
|
1367
1495
|
}).strict().describe("Response schema for fetchConfigurationList API");
|
|
1368
1496
|
|
|
1369
1497
|
// src/schemas/api/refine-text-schema.ts
|
|
1370
|
-
import { z as
|
|
1371
|
-
var refineTextParamsSchema =
|
|
1372
|
-
questionId:
|
|
1373
|
-
feedbackConfigurationId:
|
|
1374
|
-
userText:
|
|
1498
|
+
import { z as z14 } from "zod";
|
|
1499
|
+
var refineTextParamsSchema = z14.object({
|
|
1500
|
+
questionId: z14.string().describe("Unique identifier for the question"),
|
|
1501
|
+
feedbackConfigurationId: z14.string().uuid().describe("Unique identifier for the feedback configuration"),
|
|
1502
|
+
userText: z14.string().describe("Original text input from the user")
|
|
1375
1503
|
}).strict().describe("Request schema for refining user text input");
|
|
1376
|
-
var refineTextResponseSchema =
|
|
1377
|
-
message:
|
|
1378
|
-
refinedText:
|
|
1379
|
-
status:
|
|
1380
|
-
error:
|
|
1381
|
-
code:
|
|
1504
|
+
var refineTextResponseSchema = z14.object({
|
|
1505
|
+
message: z14.string().optional().describe("Human-readable message"),
|
|
1506
|
+
refinedText: z14.string().optional().describe("Refined/improved version of the user text (success only)"),
|
|
1507
|
+
status: z14.number().optional().describe("HTTP status code (error responses)"),
|
|
1508
|
+
error: z14.string().optional().describe("Error type (error responses)"),
|
|
1509
|
+
code: z14.string().optional().describe("Error code for display mapping")
|
|
1382
1510
|
}).describe("Response schema for refine text API operation");
|
|
1383
|
-
var refineTextDataSchema =
|
|
1384
|
-
userText:
|
|
1385
|
-
refinedText:
|
|
1511
|
+
var refineTextDataSchema = z14.object({
|
|
1512
|
+
userText: z14.string().describe("Original text input from the user"),
|
|
1513
|
+
refinedText: z14.string().describe("Refined/improved version of the user text")
|
|
1386
1514
|
}).describe("Data containing original and refined text (legacy nested format)");
|
|
1387
1515
|
|
|
1388
1516
|
// src/helpers/case-convert-helper.ts
|
|
@@ -1448,13 +1576,13 @@ function objectToPascal(obj) {
|
|
|
1448
1576
|
__name(objectToPascal, "objectToPascal");
|
|
1449
1577
|
|
|
1450
1578
|
// src/schemas/fields/app-props-schema.ts
|
|
1451
|
-
import { z as
|
|
1452
|
-
var currentModeSchema =
|
|
1579
|
+
import { z as z15 } from "zod";
|
|
1580
|
+
var currentModeSchema = z15.enum(["light", "dark"]).describe("Current theme mode of the application");
|
|
1453
1581
|
var CurrentModes = {
|
|
1454
1582
|
LIGHT: "light",
|
|
1455
1583
|
DARK: "dark"
|
|
1456
1584
|
};
|
|
1457
|
-
var appPropsSchema =
|
|
1585
|
+
var appPropsSchema = z15.object({
|
|
1458
1586
|
theme: themesSchema.describe(
|
|
1459
1587
|
"Theme configuration including light and dark theme colors"
|
|
1460
1588
|
),
|
|
@@ -1464,7 +1592,7 @@ var appPropsSchema = z14.object({
|
|
|
1464
1592
|
currentLanguage: LanguageFieldSchema.describe(
|
|
1465
1593
|
"Currently selected language configuration"
|
|
1466
1594
|
),
|
|
1467
|
-
questions:
|
|
1595
|
+
questions: z15.record(z15.string(), combinedQuestionSchema).describe("Collection of questions keyed by their string identifiers"),
|
|
1468
1596
|
questionLanguages: LanguagesSchema.describe(
|
|
1469
1597
|
"Available languages for questions"
|
|
1470
1598
|
),
|
|
@@ -1474,15 +1602,15 @@ var appPropsSchema = z14.object({
|
|
|
1474
1602
|
translations: translationsSchema.optional().describe(
|
|
1475
1603
|
"Multi-language translations for questions and form content (optional)"
|
|
1476
1604
|
),
|
|
1477
|
-
onSectionChange:
|
|
1478
|
-
input: [
|
|
1479
|
-
output:
|
|
1605
|
+
onSectionChange: z15.function({
|
|
1606
|
+
input: [z15.number()],
|
|
1607
|
+
output: z15.void()
|
|
1480
1608
|
}).optional().describe("Optional callback function triggered when section changes"),
|
|
1481
|
-
onClose:
|
|
1609
|
+
onClose: z15.function({
|
|
1482
1610
|
input: [],
|
|
1483
|
-
output:
|
|
1611
|
+
output: z15.void()
|
|
1484
1612
|
}).optional().describe("Optional callback function triggered when the form is closed"),
|
|
1485
|
-
sections:
|
|
1613
|
+
sections: z15.array(sectionSchema).describe(
|
|
1486
1614
|
"Array of sections that organize questions into logical groups"
|
|
1487
1615
|
),
|
|
1488
1616
|
themeSettings: themeConfigurationSchema.describe(
|
|
@@ -1493,7 +1621,7 @@ var appPropsSchema = z14.object({
|
|
|
1493
1621
|
);
|
|
1494
1622
|
|
|
1495
1623
|
// src/index.ts
|
|
1496
|
-
import { z as
|
|
1624
|
+
import { z as z16 } from "zod";
|
|
1497
1625
|
export {
|
|
1498
1626
|
AnnotationMarkerSchema,
|
|
1499
1627
|
AnnotationSchema,
|
|
@@ -1504,6 +1632,8 @@ export {
|
|
|
1504
1632
|
DeviceThemes,
|
|
1505
1633
|
LanguageFieldSchema,
|
|
1506
1634
|
LanguagesSchema,
|
|
1635
|
+
LayoutAttachmentTypes,
|
|
1636
|
+
LayoutTypes,
|
|
1507
1637
|
MultipleChoiceDisplayStyles,
|
|
1508
1638
|
MultipleChoiceMultipleDisplayStyles,
|
|
1509
1639
|
OtherFieldsSchema,
|
|
@@ -1531,6 +1661,7 @@ export {
|
|
|
1531
1661
|
baseSubmitFeedbackSchema,
|
|
1532
1662
|
categorySpecificFiltersSchema,
|
|
1533
1663
|
choiceOrderOptionSchema,
|
|
1664
|
+
colorAttachmentSchema,
|
|
1534
1665
|
combinedQuestionSchema,
|
|
1535
1666
|
conditionalIfMetadataSchema,
|
|
1536
1667
|
conditionalIfSchema,
|
|
@@ -1556,9 +1687,15 @@ export {
|
|
|
1556
1687
|
fetchFeedbackDetailsSchema,
|
|
1557
1688
|
fetchFormConfigSchema,
|
|
1558
1689
|
filterConditionSchema,
|
|
1690
|
+
floatLayoutSchema,
|
|
1691
|
+
focalPointSchema,
|
|
1559
1692
|
formConfigSchema,
|
|
1560
1693
|
formConfigurationResponseSchema,
|
|
1561
1694
|
formPropertiesSchema,
|
|
1695
|
+
gradientAttachmentSchema,
|
|
1696
|
+
imageAttachmentSchema,
|
|
1697
|
+
layoutAttachmentSchema,
|
|
1698
|
+
layoutSurfaceSchema,
|
|
1562
1699
|
logicJumpRuleSchema,
|
|
1563
1700
|
logicJumpRulesSchema,
|
|
1564
1701
|
longAnswerQuestionSchema,
|
|
@@ -1614,6 +1751,8 @@ export {
|
|
|
1614
1751
|
refineTextParamsSchema,
|
|
1615
1752
|
refineTextResponseSchema,
|
|
1616
1753
|
responseSchema,
|
|
1754
|
+
sectionLayoutSchema,
|
|
1755
|
+
sectionLayoutVariantSchema,
|
|
1617
1756
|
sectionSchema,
|
|
1618
1757
|
sectionTranslationSchema,
|
|
1619
1758
|
sectionTranslationsByLanguageSchema,
|
|
@@ -1622,6 +1761,8 @@ export {
|
|
|
1622
1761
|
shortAnswerQuestionSchema,
|
|
1623
1762
|
shortAnswerQuestionTranslationSchema,
|
|
1624
1763
|
singleChoiceQuestionTranslationSchema,
|
|
1764
|
+
splitLayoutSchema,
|
|
1765
|
+
stackLayoutSchema,
|
|
1625
1766
|
submitFeedbackSchema,
|
|
1626
1767
|
thankYouQuestionSchema,
|
|
1627
1768
|
thankYouQuestionTranslationSchema,
|
|
@@ -1639,13 +1780,15 @@ export {
|
|
|
1639
1780
|
userPropertiesSchema,
|
|
1640
1781
|
validationRuleSchema,
|
|
1641
1782
|
validationRuleTypeSchema,
|
|
1783
|
+
videoAttachmentSchema,
|
|
1642
1784
|
visibilityConditionSchema,
|
|
1785
|
+
wallpaperLayoutSchema,
|
|
1643
1786
|
welcomeQuestionSchema,
|
|
1644
1787
|
welcomeQuestionTranslationSchema,
|
|
1645
1788
|
whoSchema,
|
|
1646
1789
|
yesNoDisplayStyleSchema,
|
|
1647
1790
|
yesNoQuestionSchema,
|
|
1648
1791
|
yesNoQuestionTranslationSchema,
|
|
1649
|
-
|
|
1792
|
+
z16 as z
|
|
1650
1793
|
};
|
|
1651
1794
|
//# sourceMappingURL=index.js.map
|