@explorer02/cfm-survey-sdk 0.0.3 → 0.0.5

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 (32) hide show
  1. package/dist/cli/index.js +116 -16
  2. package/dist/cli/index.js.map +1 -1
  3. package/dist/cli/init.d.ts.map +1 -1
  4. package/dist/cli/init.js +123 -341
  5. package/dist/cli/init.js.map +1 -1
  6. package/dist/cli/questionnaire/engine.d.ts +22 -0
  7. package/dist/cli/questionnaire/engine.d.ts.map +1 -0
  8. package/dist/cli/questionnaire/engine.js +218 -0
  9. package/dist/cli/questionnaire/engine.js.map +1 -0
  10. package/dist/cli/questionnaire/questionnaire-cli.d.ts +2 -0
  11. package/dist/cli/questionnaire/questionnaire-cli.d.ts.map +1 -0
  12. package/dist/cli/questionnaire/questionnaire-cli.js +3 -0
  13. package/dist/cli/questionnaire/questionnaire-cli.js.map +1 -0
  14. package/dist/cli/questionnaire/questions.d.ts +3 -0
  15. package/dist/cli/questionnaire/questions.d.ts.map +1 -0
  16. package/dist/cli/questionnaire/questions.js +337 -0
  17. package/dist/cli/questionnaire/questions.js.map +1 -0
  18. package/dist/cli/questionnaire/runner.d.ts +3 -0
  19. package/dist/cli/questionnaire/runner.d.ts.map +1 -0
  20. package/dist/cli/questionnaire/runner.js +161 -0
  21. package/dist/cli/questionnaire/runner.js.map +1 -0
  22. package/dist/cli/questionnaire/server.d.ts +11 -0
  23. package/dist/cli/questionnaire/server.d.ts.map +1 -0
  24. package/dist/cli/questionnaire/server.js +80 -0
  25. package/dist/cli/questionnaire/server.js.map +1 -0
  26. package/dist/cli/questionnaire/types.d.ts +95 -0
  27. package/dist/cli/questionnaire/types.d.ts.map +1 -0
  28. package/dist/cli/questionnaire/types.js +7 -0
  29. package/dist/cli/questionnaire/types.js.map +1 -0
  30. package/package.json +1 -1
  31. package/postinstall.js +57 -22
  32. package/templates/AGENT.md +45 -40
@@ -0,0 +1,218 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.HEX_INPUTS_KEY = exports.COLOR_SCHEMES = void 0;
7
+ exports.printBanner = printBanner;
8
+ exports.printSection = printSection;
9
+ exports.printSummary = printSummary;
10
+ exports.runEngine = runEngine;
11
+ // ─────────────────────────────────────────────────────────────────────────────
12
+ // Terminal Question Engine
13
+ // Renders questions, handles conditional skipping, returns collected Answers.
14
+ // Runs inside the VISIBLE IDE terminal (inherited stdio from the parent process).
15
+ // ─────────────────────────────────────────────────────────────────────────────
16
+ const readline_1 = __importDefault(require("readline"));
17
+ const const_1 = require("../const");
18
+ const c = const_1.colors;
19
+ // ── readline singleton ───────────────────────────────────────────────────────
20
+ let _rl = null;
21
+ function initRL() {
22
+ _rl = readline_1.default.createInterface({
23
+ input: process.stdin,
24
+ output: process.stdout,
25
+ terminal: true,
26
+ });
27
+ }
28
+ function closeRL() {
29
+ _rl?.close();
30
+ _rl = null;
31
+ }
32
+ function ask(prompt) {
33
+ return new Promise((resolve) => {
34
+ _rl.question(prompt, (ans) => resolve(ans.trim()));
35
+ });
36
+ }
37
+ // ── formatting helpers ───────────────────────────────────────────────────────
38
+ const br = () => console.log('');
39
+ function printBanner() {
40
+ br();
41
+ console.log(`${c.bold}${c.cyan}╔═══════════════════════════════════════════════════════╗${c.reset}`);
42
+ console.log(`${c.bold}${c.cyan}║ CFM Survey SDK — Setup Wizard 🚀 ║${c.reset}`);
43
+ console.log(`${c.bold}${c.cyan}╚═══════════════════════════════════════════════════════╝${c.reset}`);
44
+ br();
45
+ console.log(`${c.dim}Every question is ${c.bold}optional${c.reset}${c.dim} — press ${c.bold}Enter${c.reset}${c.dim} to use the smart default.${c.reset}`);
46
+ br();
47
+ }
48
+ function printSection(label) {
49
+ br();
50
+ console.log(`${c.bold}${c.bgBlue}${c.white} ${label} ${c.reset}`);
51
+ br();
52
+ }
53
+ // ── per-type renderers ───────────────────────────────────────────────────────
54
+ async function askText(q) {
55
+ const defStr = q.defaultLabel
56
+ ? ` ${c.dim}(default: ${q.defaultLabel})${c.reset}`
57
+ : '';
58
+ const tag = q.isRequired
59
+ ? `${c.red}[recommended]${c.reset}`
60
+ : `${c.dim}[optional]${c.reset}`;
61
+ console.log(`${c.bold}${c.yellow}${q.num ?? '?'}.${c.reset} ${c.bold}${q.label}${c.reset} ${tag}`);
62
+ if (q.hint)
63
+ console.log(` ${c.dim}${q.hint}${c.reset}${defStr}`);
64
+ const ans = await ask(` ${c.cyan}›${c.reset} `);
65
+ br();
66
+ return ans || (typeof q.defaultValue === 'string' ? q.defaultValue : '');
67
+ }
68
+ async function askYesNo(q) {
69
+ const def = q.defaultValue !== false;
70
+ const defStr = def ? 'y' : 'n';
71
+ console.log(`${c.bold}${c.yellow}${q.num ?? '?'}.${c.reset} ${c.bold}${q.label}${c.reset} ${c.dim}[optional]${c.reset}`);
72
+ if (q.hint)
73
+ console.log(` ${c.dim}${q.hint}${c.reset}`);
74
+ const ans = await ask(` ${c.cyan}›${c.reset} ${c.dim}(y/n, default: ${defStr})${c.reset} `);
75
+ br();
76
+ if (!ans)
77
+ return def;
78
+ return ans.toLowerCase() === 'y';
79
+ }
80
+ async function askMenu(q) {
81
+ console.log(`${c.bold}${c.yellow}${q.num ?? '?'}.${c.reset} ${c.bold}${q.label}${c.reset}`);
82
+ (q.options ?? []).forEach((opt, i) => {
83
+ console.log(` ${c.cyan}${i + 1})${c.reset} ${opt}`);
84
+ });
85
+ console.log(` ${c.dim}↵ Press Enter to skip / use smart default${c.reset}`);
86
+ const ans = await ask(` ${c.cyan}›${c.reset} `);
87
+ br();
88
+ return ans;
89
+ }
90
+ // ── colour scheme picker (special type) ─────────────────────────────────────
91
+ exports.COLOR_SCHEMES = [
92
+ { name: 'Industry Standard (Indigo + Amber)', primary: '#4F46E5', secondary: '#E0E7FF', accent: '#F59E0B', bg: '#FFFFFF', text: '#111827' },
93
+ { name: 'Minimalist (Slate + Teal)', primary: '#334155', secondary: '#F1F5F9', accent: '#0D9488', bg: '#FFFFFF', text: '#0F172A' },
94
+ { name: 'Warm Corporate (Amber + Brown)', primary: '#B45309', secondary: '#FEF3C7', accent: '#D97706', bg: '#FFFBEB', text: '#1C1917' },
95
+ { name: 'Modern Dark (Violet + Green)', primary: '#7C3AED', secondary: '#EDE9FE', accent: '#10B981', bg: '#FFFFFF', text: '#111827' },
96
+ { name: 'Professional Blue (Navy + Sky)', primary: '#1E3A5F', secondary: '#DBEAFE', accent: '#0284C7', bg: '#FFFFFF', text: '#1E293B' },
97
+ ];
98
+ async function askColorSchemes(q) {
99
+ console.log(`${c.bold}${c.yellow}${q.num ?? '?'}.${c.reset} ${c.bold}${q.label}${c.reset}`);
100
+ br();
101
+ console.log(`${c.bold}${c.underline} 5 curated professional colour schemes:${c.reset}`);
102
+ br();
103
+ exports.COLOR_SCHEMES.forEach((s, i) => {
104
+ console.log(` ${c.bold}${c.cyan}${i + 1}) ${s.name}${c.reset}`);
105
+ console.log(` ${c.dim}Primary:${c.reset} ${c.bold}${s.primary}${c.reset}`);
106
+ console.log(` ${c.dim}Secondary:${c.reset} ${s.secondary}`);
107
+ console.log(` ${c.dim}Accent:${c.reset} ${c.bold}${s.accent}${c.reset}`);
108
+ console.log(` ${c.dim}Background:${c.reset} ${s.bg} ${c.dim}Text:${c.reset} ${s.text}`);
109
+ br();
110
+ });
111
+ console.log(` ${c.dim}↵ Press Enter to let the agent decide automatically${c.reset}`);
112
+ const ans = await ask(` ${c.cyan}›${c.reset} Type a number (1–5): `);
113
+ br();
114
+ return ans;
115
+ }
116
+ // ── hex colour inputs (special type) ─────────────────────────────────────────
117
+ function normaliseHex(input, fallback) {
118
+ if (!input)
119
+ return fallback;
120
+ let hex = input.trim();
121
+ if (!hex.startsWith('#'))
122
+ hex = '#' + hex;
123
+ if (/^#[0-9A-Fa-f]{3,8}$/.test(hex))
124
+ return hex.toUpperCase();
125
+ console.log(` ${c.yellow}⚠️ Invalid hex — using default ${fallback}${c.reset}`);
126
+ return fallback;
127
+ }
128
+ const SPRINKLR_COLORS = {
129
+ primary: '#1A1F36',
130
+ secondary: '#E8F5FD',
131
+ accent: '#00B5AD',
132
+ background: '#FFFFFF',
133
+ text: '#1A1F36',
134
+ buttonText: '#FFFFFF',
135
+ };
136
+ async function askHexInputs(q) {
137
+ console.log(`${c.bold}${c.yellow}${q.num ?? '?'}.${c.reset} ${c.bold}${q.label}${c.reset}`);
138
+ br();
139
+ console.log(` ${c.dim}Enter hex codes (e.g. #4F46E5). Press Enter on any to keep the default.${c.reset}`);
140
+ br();
141
+ const p = await ask(` ${c.cyan}→${c.reset} Primary color ${c.dim}(main buttons, headers)${c.reset} › `);
142
+ const s = await ask(` ${c.cyan}→${c.reset} Secondary color ${c.dim}(light backgrounds)${c.reset} › `);
143
+ const a = await ask(` ${c.cyan}→${c.reset} Accent color ${c.dim}(highlights, links)${c.reset} › `);
144
+ const bg = await ask(` ${c.cyan}→${c.reset} Background color › `);
145
+ const tx = await ask(` ${c.cyan}→${c.reset} Text color › `);
146
+ br();
147
+ return {
148
+ primary: normaliseHex(p, SPRINKLR_COLORS.primary),
149
+ secondary: normaliseHex(s, SPRINKLR_COLORS.secondary),
150
+ accent: normaliseHex(a, SPRINKLR_COLORS.accent),
151
+ background: normaliseHex(bg, SPRINKLR_COLORS.background),
152
+ text: normaliseHex(tx, SPRINKLR_COLORS.text),
153
+ buttonText: '#FFFFFF',
154
+ };
155
+ }
156
+ // ── Summary printer ──────────────────────────────────────────────────────────
157
+ function printSummary(cfg) {
158
+ br();
159
+ console.log(`${c.bold}${c.bgGreen}${c.black} ✅ Configuration Summary ${c.reset}`);
160
+ br();
161
+ const print = (key, val) => console.log(` ${c.bold}${key.padEnd(22)}${c.reset} ${c.green}${JSON.stringify(val)}${c.reset}`);
162
+ Object.entries(cfg)
163
+ .filter(([k]) => k !== 'configuredAt')
164
+ .forEach(([k, v]) => print(k, v));
165
+ br();
166
+ }
167
+ // ── Special answer type for hex-inputs ──────────────────────────────────────
168
+ exports.HEX_INPUTS_KEY = '__hexColors__';
169
+ // ── Main runner ──────────────────────────────────────────────────────────────
170
+ /**
171
+ * Iterates over the question definitions, evaluates conditions, renders each
172
+ * question in the terminal, and returns the collected Answers map.
173
+ *
174
+ * Special answers:
175
+ * - 'hex-inputs' type stores a ColorScheme under answers[HEX_INPUTS_KEY]
176
+ */
177
+ async function runEngine(questions) {
178
+ initRL();
179
+ printBanner();
180
+ const answers = {};
181
+ for (const q of questions) {
182
+ // Evaluate skip condition
183
+ if (q.condition && !q.condition(answers))
184
+ continue;
185
+ if (q.type === 'section') {
186
+ printSection(q.label);
187
+ continue;
188
+ }
189
+ let value;
190
+ switch (q.type) {
191
+ case 'text':
192
+ value = await askText(q);
193
+ break;
194
+ case 'yesno':
195
+ value = await askYesNo(q);
196
+ break;
197
+ case 'menu':
198
+ value = await askMenu(q);
199
+ break;
200
+ case 'color-schemes':
201
+ value = await askColorSchemes(q);
202
+ break;
203
+ case 'hex-inputs': {
204
+ // Hex-inputs returns a ColorScheme object — stored under special key
205
+ const scheme = await askHexInputs(q);
206
+ answers[exports.HEX_INPUTS_KEY] = scheme;
207
+ value = null; // placeholder
208
+ break;
209
+ }
210
+ default:
211
+ value = await askText(q);
212
+ }
213
+ answers[q.id] = value;
214
+ }
215
+ closeRL();
216
+ return answers;
217
+ }
218
+ //# sourceMappingURL=engine.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"engine.js","sourceRoot":"","sources":["../../../src/cli/questionnaire/engine.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=questionnaire-cli.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"questionnaire-cli.d.ts","sourceRoot":"","sources":["../../../src/cli/questionnaire/questionnaire-cli.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,CAAC"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=questionnaire-cli.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"questionnaire-cli.js","sourceRoot":"","sources":["../../../src/cli/questionnaire/questionnaire-cli.ts"],"names":[],"mappings":""}
@@ -0,0 +1,3 @@
1
+ import { Question } from './types';
2
+ export declare const CFM_QUESTIONS: Question[];
3
+ //# sourceMappingURL=questions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"questions.d.ts","sourceRoot":"","sources":["../../../src/cli/questionnaire/questions.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,QAAQ,EAAW,MAAM,SAAS,CAAC;AAE5C,eAAO,MAAM,aAAa,EAAE,QAAQ,EAmVnC,CAAC"}
@@ -0,0 +1,337 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CFM_QUESTIONS = void 0;
4
+ exports.CFM_QUESTIONS = [
5
+ // ── PHASE 0: Mockup Detection ─────────────────────────────────────────────
6
+ {
7
+ type: 'section',
8
+ id: '__sec0__',
9
+ label: 'PHASE 0 of 7 │ Mockup Detection',
10
+ },
11
+ {
12
+ id: 'hasMockup',
13
+ type: 'yesno',
14
+ num: '0',
15
+ label: 'Did you share any UI mockup screenshots / images with the AI Agent in the IDE chat?',
16
+ hint: 'If yes, the agent will analyse them and replicate the visual design exactly.',
17
+ defaultValue: false,
18
+ defaultLabel: 'n',
19
+ },
20
+ // ── PHASE 1: Survey Identity ──────────────────────────────────────────────
21
+ {
22
+ type: 'section',
23
+ id: '__sec1__',
24
+ label: 'PHASE 1 of 7 │ Survey Identity',
25
+ },
26
+ {
27
+ id: 'surveyTitle',
28
+ type: 'text',
29
+ num: '1',
30
+ label: 'Survey Title',
31
+ hint: 'The heading displayed inside the survey page.',
32
+ defaultValue: 'Customer Feedback Survey',
33
+ defaultLabel: 'Customer Feedback Survey',
34
+ },
35
+ {
36
+ id: 'companyName',
37
+ type: 'text',
38
+ num: '2',
39
+ label: 'Company / Organisation Name',
40
+ hint: 'Shown in the header or footer.',
41
+ defaultValue: 'Sprinklr',
42
+ defaultLabel: 'Sprinklr',
43
+ },
44
+ {
45
+ id: 'browserTabTitle',
46
+ type: 'text',
47
+ num: '3',
48
+ label: 'Browser Tab Title',
49
+ hint: 'Text shown in the browser tab (<title> tag).',
50
+ defaultValue: 'Customer Feedback Survey',
51
+ defaultLabel: 'Customer Feedback Survey',
52
+ },
53
+ {
54
+ id: 'thankYouMessage',
55
+ type: 'text',
56
+ num: '4',
57
+ label: 'Thank-You Message',
58
+ hint: 'Displayed after the survey is submitted.',
59
+ defaultValue: 'Thank you for your valuable feedback!',
60
+ defaultLabel: 'Thank you for your valuable feedback!',
61
+ },
62
+ // ── PHASE 2: Logo ─────────────────────────────────────────────────────────
63
+ {
64
+ type: 'section',
65
+ id: '__sec2__',
66
+ label: 'PHASE 2 of 7 │ Logo Setup',
67
+ },
68
+ {
69
+ id: 'logoFileName',
70
+ type: 'text',
71
+ num: '5',
72
+ label: 'Logo filename inside public/',
73
+ hint: 'e.g. "logo.png" — Leave blank to use the default Sprinklr logo.',
74
+ defaultValue: '',
75
+ defaultLabel: 'none (Sprinklr default)',
76
+ },
77
+ // ── PHASE 3: UI Layout & Customisation ───────────────────────────────────
78
+ {
79
+ type: 'section',
80
+ id: '__sec3__',
81
+ label: 'PHASE 3 of 7 │ UI Layout & Customisation',
82
+ },
83
+ {
84
+ id: 'showHeader',
85
+ type: 'yesno',
86
+ num: '6',
87
+ label: 'Show a header bar at the top of the survey?',
88
+ hint: 'e.g. company name, logo.',
89
+ defaultValue: true,
90
+ defaultLabel: 'y',
91
+ },
92
+ {
93
+ id: 'showFooter',
94
+ type: 'yesno',
95
+ num: '7',
96
+ label: 'Show a footer at the bottom?',
97
+ hint: 'e.g. Privacy Policy, copyright notice.',
98
+ defaultValue: true,
99
+ defaultLabel: 'y',
100
+ },
101
+ {
102
+ id: 'showProgressBar',
103
+ type: 'yesno',
104
+ num: '8',
105
+ label: 'Show a progress bar showing survey completion?',
106
+ hint: 'Helps users see how far along they are.',
107
+ defaultValue: true,
108
+ defaultLabel: 'y',
109
+ },
110
+ {
111
+ id: 'showLanguageSwitcher',
112
+ type: 'yesno',
113
+ num: '9',
114
+ label: 'Show a language switcher for multi-language support?',
115
+ hint: 'Only needed if the survey supports multiple languages.',
116
+ defaultValue: false,
117
+ defaultLabel: 'n',
118
+ },
119
+ {
120
+ id: 'showBackButton',
121
+ type: 'yesno',
122
+ num: '10',
123
+ label: 'Allow users to go back to previous questions?',
124
+ hint: 'Shows a "Back" button between pages.',
125
+ defaultValue: true,
126
+ defaultLabel: 'y',
127
+ },
128
+ {
129
+ id: 'showNextButton',
130
+ type: 'yesno',
131
+ num: '10b',
132
+ label: 'Show a "Next" button between pages?',
133
+ hint: 'Required if your survey has multiple pages.',
134
+ defaultValue: true,
135
+ defaultLabel: 'y',
136
+ },
137
+ {
138
+ id: 'layoutWidth',
139
+ type: 'menu',
140
+ num: '11',
141
+ label: 'Survey content width',
142
+ options: [
143
+ 'Narrow (max-w-xl — compact, focussed)',
144
+ 'Standard (max-w-3xl — balanced)',
145
+ 'Wide (max-w-5xl — spacious, desktop-first)',
146
+ ],
147
+ },
148
+ {
149
+ id: 'borderStyle',
150
+ type: 'menu',
151
+ num: '12',
152
+ label: 'Border / corner style',
153
+ options: [
154
+ 'Sharp corners (square, corporate feel)',
155
+ 'Slightly rounded (modern, friendly)',
156
+ 'Fully rounded / pill (casual, soft)',
157
+ ],
158
+ },
159
+ {
160
+ id: 'fontStyle',
161
+ type: 'menu',
162
+ num: '13',
163
+ label: 'Font preference',
164
+ options: [
165
+ 'System font (fastest, clean)',
166
+ 'Modern sans-serif (Inter / Roboto — recommended)',
167
+ 'Classic serif (Times-style, formal)',
168
+ ],
169
+ },
170
+ {
171
+ id: 'showQuestionNumbers',
172
+ type: 'yesno',
173
+ num: '14',
174
+ label: 'Show question numbers? (e.g. "Q1.", "Q2.")',
175
+ hint: 'Helps users track progress within a page.',
176
+ defaultValue: true,
177
+ defaultLabel: 'y',
178
+ },
179
+ {
180
+ id: 'showRequiredAsterisk',
181
+ type: 'yesno',
182
+ num: '15',
183
+ label: 'Mark required questions with an asterisk (*)?',
184
+ hint: 'Standard survey convention — highly recommended.',
185
+ defaultValue: true,
186
+ defaultLabel: 'y',
187
+ },
188
+ {
189
+ id: 'submitButtonText',
190
+ type: 'text',
191
+ num: '16',
192
+ label: 'Submit button label',
193
+ hint: 'Text on the final submit button.',
194
+ defaultValue: 'Submit',
195
+ defaultLabel: 'Submit',
196
+ },
197
+ {
198
+ id: 'nextButtonText',
199
+ type: 'text',
200
+ num: '17',
201
+ label: 'Next button label',
202
+ hint: 'Text on the "next page" button.',
203
+ defaultValue: 'Next',
204
+ defaultLabel: 'Next',
205
+ condition: (answers) => answers['showNextButton'] !== false,
206
+ },
207
+ {
208
+ id: 'backButtonText',
209
+ type: 'text',
210
+ num: '18',
211
+ label: 'Back button label',
212
+ hint: 'Text on the "previous page" button.',
213
+ defaultValue: 'Back',
214
+ defaultLabel: 'Back',
215
+ // ✅ Conditional: only shown when the user chose to have a back button
216
+ condition: (answers) => answers['showBackButton'] === true,
217
+ },
218
+ {
219
+ id: 'animationsEnabled',
220
+ type: 'yesno',
221
+ num: '19',
222
+ label: 'Enable smooth animations / transitions between pages?',
223
+ hint: 'Subtle fade transitions feel polished and modern.',
224
+ defaultValue: true,
225
+ defaultLabel: 'y',
226
+ },
227
+ // ── PHASE 4: Color Theme ──────────────────────────────────────────────────
228
+ {
229
+ type: 'section',
230
+ id: '__sec4__',
231
+ label: 'PHASE 4 of 7 │ Color Theme',
232
+ },
233
+ {
234
+ id: 'colorSource',
235
+ type: 'menu',
236
+ num: '20',
237
+ label: 'How should the color theme be chosen?',
238
+ // Note: options are rendered dynamically in the runner using hasMockup context
239
+ options: [
240
+ 'Extract colors from your mockup screenshots',
241
+ 'Extract colors from your logo',
242
+ 'Let me choose a custom color scheme',
243
+ 'Agent picks the best professional scheme automatically',
244
+ ],
245
+ },
246
+ // ── If custom mode chosen: how? ───────────────────────────────────────────
247
+ {
248
+ id: 'colorCustomMode',
249
+ type: 'menu',
250
+ num: '20b',
251
+ label: 'How would you like to provide your colors?',
252
+ options: [
253
+ 'Show me 5 suggested professional color schemes to pick from',
254
+ 'I will type in my own hex color codes',
255
+ ],
256
+ // Only if user selected option 3 (custom)
257
+ condition: (a) => a['colorSource'] === '3',
258
+ },
259
+ // ── Color scheme picker (shown when colorCustomMode === '1') ──────────────
260
+ {
261
+ id: 'colorSchemePick',
262
+ type: 'color-schemes',
263
+ num: '20c',
264
+ label: 'Pick a colour scheme',
265
+ condition: (a) => a['colorSource'] === '3' && a['colorCustomMode'] === '1',
266
+ },
267
+ // ── Hex inputs (shown when colorCustomMode === '2') ───────────────────────
268
+ {
269
+ id: 'hexColors',
270
+ type: 'hex-inputs',
271
+ num: '20d',
272
+ label: 'Enter your custom hex color codes',
273
+ condition: (a) => a['colorSource'] === '3' && a['colorCustomMode'] === '2',
274
+ },
275
+ // ── PHASE 5: SDK Placeholder Values ──────────────────────────────────────
276
+ {
277
+ type: 'section',
278
+ id: '__sec5__',
279
+ label: 'PHASE 5 of 7 │ Survey Data Configuration',
280
+ },
281
+ {
282
+ id: 'firstName',
283
+ type: 'text',
284
+ num: '21',
285
+ label: 'Test First Name',
286
+ hint: 'Used to replace {{FIRST_NAME}} in survey questions.',
287
+ defaultValue: 'Unnat',
288
+ defaultLabel: 'Unnat',
289
+ isRequired: true,
290
+ },
291
+ {
292
+ id: 'lastName',
293
+ type: 'text',
294
+ num: '22',
295
+ label: 'Test Last Name',
296
+ hint: 'Used to replace {{LAST_NAME}} in survey questions.',
297
+ defaultValue: 'Agrawal',
298
+ defaultLabel: 'Agrawal',
299
+ isRequired: true,
300
+ },
301
+ {
302
+ id: 'email',
303
+ type: 'text',
304
+ num: '23',
305
+ label: 'Test Email Address',
306
+ hint: 'Used to replace {{EMAIL_ADDRESS}} in survey questions.',
307
+ defaultValue: 'unnat.agrawal@sprinklr.com',
308
+ defaultLabel: 'unnat.agrawal@sprinklr.com',
309
+ isRequired: true,
310
+ },
311
+ {
312
+ id: 'debug',
313
+ type: 'yesno',
314
+ num: '24',
315
+ label: 'Enable Debug / Test Mode?',
316
+ hint: 'Shows extra info in browser console. Turn ON while building, OFF before going live.',
317
+ defaultValue: true,
318
+ defaultLabel: 'y',
319
+ isRequired: true,
320
+ },
321
+ // ── PHASE 6: Deployment ───────────────────────────────────────────────────
322
+ {
323
+ type: 'section',
324
+ id: '__sec6__',
325
+ label: 'PHASE 6 of 7 │ Deployment',
326
+ },
327
+ {
328
+ id: 'deployToVercel',
329
+ type: 'yesno',
330
+ num: '25',
331
+ label: 'Automatically deploy to Vercel when the build is ready?',
332
+ hint: 'This publishes your survey live on the internet. You can also do this later.',
333
+ defaultValue: true,
334
+ defaultLabel: 'y',
335
+ },
336
+ ];
337
+ //# sourceMappingURL=questions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"questions.js","sourceRoot":"","sources":["../../../src/cli/questionnaire/questions.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import { Answers } from './types';
2
+ export declare function runQuestionnaire(): Promise<Answers>;
3
+ //# sourceMappingURL=runner.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"runner.d.ts","sourceRoot":"","sources":["../../../src/cli/questionnaire/runner.ts"],"names":[],"mappings":"AAiBA,OAAO,EAAc,OAAO,EAAE,MAAM,SAAS,CAAC;AAQ9C,wBAAsB,gBAAgB,IAAI,OAAO,CAAC,OAAO,CAAC,CA2IzD"}