@starlein/paperclip-plugin-company-wizard 0.4.6 → 0.4.9
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/CHANGELOG.md +78 -0
- package/README.md +6 -4
- package/dist/manifest.js +1 -1
- package/dist/manifest.js.map +1 -1
- package/dist/ui/index.css +82 -0
- package/dist/ui/index.css.map +2 -2
- package/dist/ui/index.js +422 -137
- package/dist/ui/index.js.map +4 -4
- package/dist/worker.js +352 -21
- package/dist/worker.js.map +3 -3
- package/package.json +1 -1
- package/templates/bootstrap-instructions.md +2 -2
- package/templates/modules/architecture-plan/agents/ceo/skills/architecture-plan.bar.md +17 -0
- package/templates/modules/architecture-plan/agents/ui-designer/skills/architecture-plan.md +2 -0
- package/templates/modules/architecture-plan/agents/ui-designer/skills/design-system.md +5 -4
- package/templates/modules/architecture-plan/skills/architecture-plan.md +1 -1
- package/templates/modules/architecture-plan/skills/design-system.md +25 -0
- package/templates/modules/auto-assign/agents/ceo/heartbeat-section.md +1 -1
- package/templates/modules/auto-assign/agents/product-owner/heartbeat-section.md +1 -1
- package/templates/modules/backlog/agents/ceo/heartbeat-section.md +1 -1
- package/templates/modules/backlog/agents/ceo/skills/backlog-health.fallback.md +2 -0
- package/templates/modules/backlog/agents/product-owner/heartbeat-section.md +1 -1
- package/templates/modules/backlog/docs/backlog-process.md +38 -1
- package/templates/modules/backlog/docs/backlog-template.md +1 -1
- package/templates/modules/backlog/module.meta.json +1 -1
- package/templates/modules/backlog/skills/backlog-health.bar.md +2 -0
- package/templates/modules/backlog/skills/backlog-health.md +7 -4
- package/templates/modules/brand-identity/agents/ceo/skills/brand-identity.fallback.md +4 -4
- package/templates/modules/brand-identity/skills/brand-identity.md +1 -1
- package/templates/modules/ci-cd/agents/engineer/skills/ci-cd.fallback.md +2 -1
- package/templates/modules/ci-cd/skills/ci-cd.md +13 -2
- package/templates/modules/codebase-onboarding/agents/ceo/skills/codebase-audit.fallback.md +10 -0
- package/templates/modules/competitive-intel/agents/product-owner/skills/competitive-tracking.fallback.md +19 -0
- package/templates/modules/competitive-intel/skills/competitive-tracking.bar.md +11 -0
- package/templates/modules/competitive-intel/skills/competitive-tracking.md +1 -1
- package/templates/modules/dependency-management/module.meta.json +9 -0
- package/templates/modules/dependency-management/skills/dependency-audit.md +8 -5
- package/templates/modules/documentation/skills/project-docs.bar.md +13 -0
- package/templates/modules/game-design/skills/game-design.bar.md +13 -0
- package/templates/modules/github-repo/agents/engineer/skills/git-workflow.md +79 -17
- package/templates/modules/github-repo/docs/git-workflow.md +34 -16
- package/templates/modules/market-analysis/agents/ux-researcher/skills/market-analysis.md +1 -1
- package/templates/modules/market-analysis/docs/market-analysis-template.md +17 -0
- package/templates/modules/market-analysis/skills/market-analysis.md +1 -1
- package/templates/modules/monitoring/agents/engineer/skills/monitoring.fallback.md +1 -1
- package/templates/modules/monitoring/skills/monitoring.md +3 -1
- package/templates/modules/pr-review/agents/code-reviewer/skills/code-review.md +19 -5
- package/templates/modules/pr-review/agents/devops/skills/infra-review.md +6 -8
- package/templates/modules/pr-review/agents/engineer/skills/pr-workflow.md +47 -12
- package/templates/modules/pr-review/agents/product-owner/skills/product-review.md +3 -2
- package/templates/modules/pr-review/agents/ui-designer/skills/design-review.md +4 -6
- package/templates/modules/pr-review/agents/ux-researcher/skills/ux-review.md +4 -6
- package/templates/modules/pr-review/docs/pr-conventions.md +4 -4
- package/templates/modules/pr-review/module.meta.json +1 -1
- package/templates/modules/release-management/agents/ceo/skills/release-process.fallback.md +20 -0
- package/templates/modules/release-management/module.meta.json +9 -0
- package/templates/modules/release-management/skills/release-process.md +7 -5
- package/templates/modules/security-audit/skills/threat-model.md +1 -1
- package/templates/modules/stall-detection/agents/ceo/heartbeat-section.md +1 -1
- package/templates/modules/tech-stack/skills/tech-stack.md +1 -1
- package/templates/modules/triage/agents/ceo/skills/issue-triage.fallback.md +2 -2
- package/templates/modules/triage/skills/issue-triage.md +1 -1
- package/templates/modules/user-testing/agents/qa/skills/user-testing.md +1 -1
- package/templates/modules/user-testing/skills/user-testing.md +1 -1
- package/templates/modules/vision-workshop/agents/ceo/skills/vision-workshop.md +1 -1
- package/templates/modules/website-relaunch/module.meta.json +0 -15
- package/templates/presets/repo-maintenance/preset.meta.json +3 -3
- package/templates/roles/audio-designer/role.meta.json +5 -2
- package/templates/roles/ceo/HEARTBEAT.md +1 -1
- package/templates/roles/cmo/AGENTS.md +15 -0
- package/templates/roles/cmo/HEARTBEAT.md +1 -1
- package/templates/roles/cmo/role.meta.json +2 -1
- package/templates/roles/code-reviewer/AGENTS.md +3 -3
- package/templates/roles/code-reviewer/HEARTBEAT.md +2 -1
- package/templates/roles/code-reviewer/role.meta.json +4 -1
- package/templates/roles/cto/AGENTS.md +22 -0
- package/templates/roles/cto/HEARTBEAT.md +1 -1
- package/templates/roles/cto/role.meta.json +2 -1
- package/templates/roles/customer-success/role.meta.json +2 -1
- package/templates/roles/devops/AGENTS.md +21 -0
- package/templates/roles/devops/HEARTBEAT.md +1 -1
- package/templates/roles/devops/role.meta.json +2 -1
- package/templates/roles/engineer/role.meta.json +2 -1
- package/templates/roles/game-artist/role.meta.json +5 -2
- package/templates/roles/game-designer/role.meta.json +4 -1
- package/templates/roles/level-designer/role.meta.json +4 -1
- package/templates/roles/product-owner/SOUL.md +4 -1
- package/templates/roles/product-owner/role.meta.json +4 -1
- package/templates/roles/qa/HEARTBEAT.md +3 -2
- package/templates/roles/qa/role.meta.json +2 -1
- package/templates/roles/security-engineer/AGENTS.md +7 -0
- package/templates/roles/security-engineer/role.meta.json +2 -1
- package/templates/roles/technical-writer/AGENTS.md +1 -1
- package/templates/roles/technical-writer/role.meta.json +2 -1
- package/templates/roles/ui-designer/HEARTBEAT.md +1 -1
- package/templates/roles/ui-designer/role.meta.json +2 -1
- package/templates/roles/ux-researcher/AGENTS.md +21 -0
- package/templates/roles/ux-researcher/HEARTBEAT.md +1 -1
- package/templates/roles/ux-researcher/role.meta.json +4 -1
package/dist/ui/index.js
CHANGED
|
@@ -180,23 +180,38 @@ var ChevronLeft = createLucideIcon("chevron-left", __iconNode8);
|
|
|
180
180
|
var __iconNode9 = [["path", { d: "m9 18 6-6-6-6", key: "mthhwq" }]];
|
|
181
181
|
var ChevronRight = createLucideIcon("chevron-right", __iconNode9);
|
|
182
182
|
|
|
183
|
-
// node_modules/.pnpm/lucide-react@0.574.0_react@19.2.4/node_modules/lucide-react/dist/esm/icons/circle-
|
|
183
|
+
// node_modules/.pnpm/lucide-react@0.574.0_react@19.2.4/node_modules/lucide-react/dist/esm/icons/circle-alert.js
|
|
184
184
|
var __iconNode10 = [
|
|
185
|
+
["circle", { cx: "12", cy: "12", r: "10", key: "1mglay" }],
|
|
186
|
+
["line", { x1: "12", x2: "12", y1: "8", y2: "12", key: "1pkeuh" }],
|
|
187
|
+
["line", { x1: "12", x2: "12.01", y1: "16", y2: "16", key: "4dfq90" }]
|
|
188
|
+
];
|
|
189
|
+
var CircleAlert = createLucideIcon("circle-alert", __iconNode10);
|
|
190
|
+
|
|
191
|
+
// node_modules/.pnpm/lucide-react@0.574.0_react@19.2.4/node_modules/lucide-react/dist/esm/icons/circle-check-big.js
|
|
192
|
+
var __iconNode11 = [
|
|
193
|
+
["path", { d: "M21.801 10A10 10 0 1 1 17 3.335", key: "yps3ct" }],
|
|
194
|
+
["path", { d: "m9 11 3 3L22 4", key: "1pflzl" }]
|
|
195
|
+
];
|
|
196
|
+
var CircleCheckBig = createLucideIcon("circle-check-big", __iconNode11);
|
|
197
|
+
|
|
198
|
+
// node_modules/.pnpm/lucide-react@0.574.0_react@19.2.4/node_modules/lucide-react/dist/esm/icons/circle-check.js
|
|
199
|
+
var __iconNode12 = [
|
|
185
200
|
["circle", { cx: "12", cy: "12", r: "10", key: "1mglay" }],
|
|
186
201
|
["path", { d: "m9 12 2 2 4-4", key: "dzmm74" }]
|
|
187
202
|
];
|
|
188
|
-
var CircleCheck = createLucideIcon("circle-check",
|
|
203
|
+
var CircleCheck = createLucideIcon("circle-check", __iconNode12);
|
|
189
204
|
|
|
190
205
|
// node_modules/.pnpm/lucide-react@0.574.0_react@19.2.4/node_modules/lucide-react/dist/esm/icons/circle-plus.js
|
|
191
|
-
var
|
|
206
|
+
var __iconNode13 = [
|
|
192
207
|
["circle", { cx: "12", cy: "12", r: "10", key: "1mglay" }],
|
|
193
208
|
["path", { d: "M8 12h8", key: "1wcyev" }],
|
|
194
209
|
["path", { d: "M12 8v8", key: "napkw2" }]
|
|
195
210
|
];
|
|
196
|
-
var CirclePlus = createLucideIcon("circle-plus",
|
|
211
|
+
var CirclePlus = createLucideIcon("circle-plus", __iconNode13);
|
|
197
212
|
|
|
198
213
|
// node_modules/.pnpm/lucide-react@0.574.0_react@19.2.4/node_modules/lucide-react/dist/esm/icons/clipboard-check.js
|
|
199
|
-
var
|
|
214
|
+
var __iconNode14 = [
|
|
200
215
|
["rect", { width: "8", height: "4", x: "8", y: "2", rx: "1", ry: "1", key: "tgr4d6" }],
|
|
201
216
|
[
|
|
202
217
|
"path",
|
|
@@ -207,10 +222,10 @@ var __iconNode12 = [
|
|
|
207
222
|
],
|
|
208
223
|
["path", { d: "m9 14 2 2 4-4", key: "df797q" }]
|
|
209
224
|
];
|
|
210
|
-
var ClipboardCheck = createLucideIcon("clipboard-check",
|
|
225
|
+
var ClipboardCheck = createLucideIcon("clipboard-check", __iconNode14);
|
|
211
226
|
|
|
212
227
|
// node_modules/.pnpm/lucide-react@0.574.0_react@19.2.4/node_modules/lucide-react/dist/esm/icons/cpu.js
|
|
213
|
-
var
|
|
228
|
+
var __iconNode15 = [
|
|
214
229
|
["path", { d: "M12 20v2", key: "1lh1kg" }],
|
|
215
230
|
["path", { d: "M12 2v2", key: "tus03m" }],
|
|
216
231
|
["path", { d: "M17 20v2", key: "1rnc9c" }],
|
|
@@ -226,10 +241,10 @@ var __iconNode13 = [
|
|
|
226
241
|
["rect", { x: "4", y: "4", width: "16", height: "16", rx: "2", key: "1vbyd7" }],
|
|
227
242
|
["rect", { x: "8", y: "8", width: "8", height: "8", rx: "1", key: "z9xiuo" }]
|
|
228
243
|
];
|
|
229
|
-
var Cpu = createLucideIcon("cpu",
|
|
244
|
+
var Cpu = createLucideIcon("cpu", __iconNode15);
|
|
230
245
|
|
|
231
246
|
// node_modules/.pnpm/lucide-react@0.574.0_react@19.2.4/node_modules/lucide-react/dist/esm/icons/crown.js
|
|
232
|
-
var
|
|
247
|
+
var __iconNode16 = [
|
|
233
248
|
[
|
|
234
249
|
"path",
|
|
235
250
|
{
|
|
@@ -239,18 +254,18 @@ var __iconNode14 = [
|
|
|
239
254
|
],
|
|
240
255
|
["path", { d: "M5 21h14", key: "11awu3" }]
|
|
241
256
|
];
|
|
242
|
-
var Crown = createLucideIcon("crown",
|
|
257
|
+
var Crown = createLucideIcon("crown", __iconNode16);
|
|
243
258
|
|
|
244
259
|
// node_modules/.pnpm/lucide-react@0.574.0_react@19.2.4/node_modules/lucide-react/dist/esm/icons/external-link.js
|
|
245
|
-
var
|
|
260
|
+
var __iconNode17 = [
|
|
246
261
|
["path", { d: "M15 3h6v6", key: "1q9fwt" }],
|
|
247
262
|
["path", { d: "M10 14 21 3", key: "gplh6r" }],
|
|
248
263
|
["path", { d: "M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6", key: "a6xqqp" }]
|
|
249
264
|
];
|
|
250
|
-
var ExternalLink = createLucideIcon("external-link",
|
|
265
|
+
var ExternalLink = createLucideIcon("external-link", __iconNode17);
|
|
251
266
|
|
|
252
267
|
// node_modules/.pnpm/lucide-react@0.574.0_react@19.2.4/node_modules/lucide-react/dist/esm/icons/file-text.js
|
|
253
|
-
var
|
|
268
|
+
var __iconNode18 = [
|
|
254
269
|
[
|
|
255
270
|
"path",
|
|
256
271
|
{
|
|
@@ -263,10 +278,10 @@ var __iconNode16 = [
|
|
|
263
278
|
["path", { d: "M16 13H8", key: "t4e002" }],
|
|
264
279
|
["path", { d: "M16 17H8", key: "z1uh3a" }]
|
|
265
280
|
];
|
|
266
|
-
var FileText = createLucideIcon("file-text",
|
|
281
|
+
var FileText = createLucideIcon("file-text", __iconNode18);
|
|
267
282
|
|
|
268
283
|
// node_modules/.pnpm/lucide-react@0.574.0_react@19.2.4/node_modules/lucide-react/dist/esm/icons/flask-conical.js
|
|
269
|
-
var
|
|
284
|
+
var __iconNode19 = [
|
|
270
285
|
[
|
|
271
286
|
"path",
|
|
272
287
|
{
|
|
@@ -277,18 +292,18 @@ var __iconNode17 = [
|
|
|
277
292
|
["path", { d: "M6.453 15h11.094", key: "3shlmq" }],
|
|
278
293
|
["path", { d: "M8.5 2h7", key: "csnxdl" }]
|
|
279
294
|
];
|
|
280
|
-
var FlaskConical = createLucideIcon("flask-conical",
|
|
295
|
+
var FlaskConical = createLucideIcon("flask-conical", __iconNode19);
|
|
281
296
|
|
|
282
297
|
// node_modules/.pnpm/lucide-react@0.574.0_react@19.2.4/node_modules/lucide-react/dist/esm/icons/git-branch.js
|
|
283
|
-
var
|
|
298
|
+
var __iconNode20 = [
|
|
284
299
|
["path", { d: "M15 6a9 9 0 0 0-9 9V3", key: "1cii5b" }],
|
|
285
300
|
["circle", { cx: "18", cy: "6", r: "3", key: "1h7g24" }],
|
|
286
301
|
["circle", { cx: "6", cy: "18", r: "3", key: "fqmcym" }]
|
|
287
302
|
];
|
|
288
|
-
var GitBranch = createLucideIcon("git-branch",
|
|
303
|
+
var GitBranch = createLucideIcon("git-branch", __iconNode20);
|
|
289
304
|
|
|
290
305
|
// node_modules/.pnpm/lucide-react@0.574.0_react@19.2.4/node_modules/lucide-react/dist/esm/icons/github.js
|
|
291
|
-
var
|
|
306
|
+
var __iconNode21 = [
|
|
292
307
|
[
|
|
293
308
|
"path",
|
|
294
309
|
{
|
|
@@ -298,10 +313,10 @@ var __iconNode19 = [
|
|
|
298
313
|
],
|
|
299
314
|
["path", { d: "M9 18c-4.51 2-5-2-7-2", key: "9comsn" }]
|
|
300
315
|
];
|
|
301
|
-
var Github = createLucideIcon("github",
|
|
316
|
+
var Github = createLucideIcon("github", __iconNode21);
|
|
302
317
|
|
|
303
318
|
// node_modules/.pnpm/lucide-react@0.574.0_react@19.2.4/node_modules/lucide-react/dist/esm/icons/layers.js
|
|
304
|
-
var
|
|
319
|
+
var __iconNode22 = [
|
|
305
320
|
[
|
|
306
321
|
"path",
|
|
307
322
|
{
|
|
@@ -324,31 +339,31 @@ var __iconNode20 = [
|
|
|
324
339
|
}
|
|
325
340
|
]
|
|
326
341
|
];
|
|
327
|
-
var Layers = createLucideIcon("layers",
|
|
342
|
+
var Layers = createLucideIcon("layers", __iconNode22);
|
|
328
343
|
|
|
329
344
|
// node_modules/.pnpm/lucide-react@0.574.0_react@19.2.4/node_modules/lucide-react/dist/esm/icons/list-checks.js
|
|
330
|
-
var
|
|
345
|
+
var __iconNode23 = [
|
|
331
346
|
["path", { d: "M13 5h8", key: "a7qcls" }],
|
|
332
347
|
["path", { d: "M13 12h8", key: "h98zly" }],
|
|
333
348
|
["path", { d: "M13 19h8", key: "c3s6r1" }],
|
|
334
349
|
["path", { d: "m3 17 2 2 4-4", key: "1jhpwq" }],
|
|
335
350
|
["path", { d: "m3 7 2 2 4-4", key: "1obspn" }]
|
|
336
351
|
];
|
|
337
|
-
var ListChecks = createLucideIcon("list-checks",
|
|
352
|
+
var ListChecks = createLucideIcon("list-checks", __iconNode23);
|
|
338
353
|
|
|
339
354
|
// node_modules/.pnpm/lucide-react@0.574.0_react@19.2.4/node_modules/lucide-react/dist/esm/icons/loader-circle.js
|
|
340
|
-
var
|
|
341
|
-
var LoaderCircle = createLucideIcon("loader-circle",
|
|
355
|
+
var __iconNode24 = [["path", { d: "M21 12a9 9 0 1 1-6.219-8.56", key: "13zald" }]];
|
|
356
|
+
var LoaderCircle = createLucideIcon("loader-circle", __iconNode24);
|
|
342
357
|
|
|
343
358
|
// node_modules/.pnpm/lucide-react@0.574.0_react@19.2.4/node_modules/lucide-react/dist/esm/icons/lock.js
|
|
344
|
-
var
|
|
359
|
+
var __iconNode25 = [
|
|
345
360
|
["rect", { width: "18", height: "11", x: "3", y: "11", rx: "2", ry: "2", key: "1w4ew1" }],
|
|
346
361
|
["path", { d: "M7 11V7a5 5 0 0 1 10 0v4", key: "fwvmzm" }]
|
|
347
362
|
];
|
|
348
|
-
var Lock = createLucideIcon("lock",
|
|
363
|
+
var Lock = createLucideIcon("lock", __iconNode25);
|
|
349
364
|
|
|
350
365
|
// node_modules/.pnpm/lucide-react@0.574.0_react@19.2.4/node_modules/lucide-react/dist/esm/icons/message-square.js
|
|
351
|
-
var
|
|
366
|
+
var __iconNode26 = [
|
|
352
367
|
[
|
|
353
368
|
"path",
|
|
354
369
|
{
|
|
@@ -357,10 +372,10 @@ var __iconNode24 = [
|
|
|
357
372
|
}
|
|
358
373
|
]
|
|
359
374
|
];
|
|
360
|
-
var MessageSquare = createLucideIcon("message-square",
|
|
375
|
+
var MessageSquare = createLucideIcon("message-square", __iconNode26);
|
|
361
376
|
|
|
362
377
|
// node_modules/.pnpm/lucide-react@0.574.0_react@19.2.4/node_modules/lucide-react/dist/esm/icons/pencil.js
|
|
363
|
-
var
|
|
378
|
+
var __iconNode27 = [
|
|
364
379
|
[
|
|
365
380
|
"path",
|
|
366
381
|
{
|
|
@@ -370,19 +385,19 @@ var __iconNode25 = [
|
|
|
370
385
|
],
|
|
371
386
|
["path", { d: "m15 5 4 4", key: "1mk7zo" }]
|
|
372
387
|
];
|
|
373
|
-
var Pencil = createLucideIcon("pencil",
|
|
388
|
+
var Pencil = createLucideIcon("pencil", __iconNode27);
|
|
374
389
|
|
|
375
390
|
// node_modules/.pnpm/lucide-react@0.574.0_react@19.2.4/node_modules/lucide-react/dist/esm/icons/refresh-cw.js
|
|
376
|
-
var
|
|
391
|
+
var __iconNode28 = [
|
|
377
392
|
["path", { d: "M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8", key: "v9h5vc" }],
|
|
378
393
|
["path", { d: "M21 3v5h-5", key: "1q7to0" }],
|
|
379
394
|
["path", { d: "M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16", key: "3uifl3" }],
|
|
380
395
|
["path", { d: "M8 16H3v5", key: "1cv678" }]
|
|
381
396
|
];
|
|
382
|
-
var RefreshCw = createLucideIcon("refresh-cw",
|
|
397
|
+
var RefreshCw = createLucideIcon("refresh-cw", __iconNode28);
|
|
383
398
|
|
|
384
399
|
// node_modules/.pnpm/lucide-react@0.574.0_react@19.2.4/node_modules/lucide-react/dist/esm/icons/rocket.js
|
|
385
|
-
var
|
|
400
|
+
var __iconNode29 = [
|
|
386
401
|
["path", { d: "M12 15v5s3.03-.55 4-2c1.08-1.62 0-5 0-5", key: "qeys4" }],
|
|
387
402
|
[
|
|
388
403
|
"path",
|
|
@@ -400,17 +415,17 @@ var __iconNode27 = [
|
|
|
400
415
|
],
|
|
401
416
|
["path", { d: "M9 12H4s.55-3.03 2-4c1.62-1.08 5 .05 5 .05", key: "92ym6u" }]
|
|
402
417
|
];
|
|
403
|
-
var Rocket = createLucideIcon("rocket",
|
|
418
|
+
var Rocket = createLucideIcon("rocket", __iconNode29);
|
|
404
419
|
|
|
405
420
|
// node_modules/.pnpm/lucide-react@0.574.0_react@19.2.4/node_modules/lucide-react/dist/esm/icons/rotate-ccw.js
|
|
406
|
-
var
|
|
421
|
+
var __iconNode30 = [
|
|
407
422
|
["path", { d: "M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8", key: "1357e3" }],
|
|
408
423
|
["path", { d: "M3 3v5h5", key: "1xhq8a" }]
|
|
409
424
|
];
|
|
410
|
-
var RotateCcw = createLucideIcon("rotate-ccw",
|
|
425
|
+
var RotateCcw = createLucideIcon("rotate-ccw", __iconNode30);
|
|
411
426
|
|
|
412
427
|
// node_modules/.pnpm/lucide-react@0.574.0_react@19.2.4/node_modules/lucide-react/dist/esm/icons/send.js
|
|
413
|
-
var
|
|
428
|
+
var __iconNode31 = [
|
|
414
429
|
[
|
|
415
430
|
"path",
|
|
416
431
|
{
|
|
@@ -420,19 +435,19 @@ var __iconNode29 = [
|
|
|
420
435
|
],
|
|
421
436
|
["path", { d: "m21.854 2.147-10.94 10.939", key: "12cjpa" }]
|
|
422
437
|
];
|
|
423
|
-
var Send = createLucideIcon("send",
|
|
438
|
+
var Send = createLucideIcon("send", __iconNode31);
|
|
424
439
|
|
|
425
440
|
// node_modules/.pnpm/lucide-react@0.574.0_react@19.2.4/node_modules/lucide-react/dist/esm/icons/settings-2.js
|
|
426
|
-
var
|
|
441
|
+
var __iconNode32 = [
|
|
427
442
|
["path", { d: "M14 17H5", key: "gfn3mx" }],
|
|
428
443
|
["path", { d: "M19 7h-9", key: "6i9tg" }],
|
|
429
444
|
["circle", { cx: "17", cy: "17", r: "3", key: "18b49y" }],
|
|
430
445
|
["circle", { cx: "7", cy: "7", r: "3", key: "dfmy0x" }]
|
|
431
446
|
];
|
|
432
|
-
var Settings2 = createLucideIcon("settings-2",
|
|
447
|
+
var Settings2 = createLucideIcon("settings-2", __iconNode32);
|
|
433
448
|
|
|
434
449
|
// node_modules/.pnpm/lucide-react@0.574.0_react@19.2.4/node_modules/lucide-react/dist/esm/icons/settings.js
|
|
435
|
-
var
|
|
450
|
+
var __iconNode33 = [
|
|
436
451
|
[
|
|
437
452
|
"path",
|
|
438
453
|
{
|
|
@@ -442,10 +457,10 @@ var __iconNode31 = [
|
|
|
442
457
|
],
|
|
443
458
|
["circle", { cx: "12", cy: "12", r: "3", key: "1v7zrd" }]
|
|
444
459
|
];
|
|
445
|
-
var Settings = createLucideIcon("settings",
|
|
460
|
+
var Settings = createLucideIcon("settings", __iconNode33);
|
|
446
461
|
|
|
447
462
|
// node_modules/.pnpm/lucide-react@0.574.0_react@19.2.4/node_modules/lucide-react/dist/esm/icons/shield.js
|
|
448
|
-
var
|
|
463
|
+
var __iconNode34 = [
|
|
449
464
|
[
|
|
450
465
|
"path",
|
|
451
466
|
{
|
|
@@ -454,10 +469,10 @@ var __iconNode32 = [
|
|
|
454
469
|
}
|
|
455
470
|
]
|
|
456
471
|
];
|
|
457
|
-
var Shield = createLucideIcon("shield",
|
|
472
|
+
var Shield = createLucideIcon("shield", __iconNode34);
|
|
458
473
|
|
|
459
474
|
// node_modules/.pnpm/lucide-react@0.574.0_react@19.2.4/node_modules/lucide-react/dist/esm/icons/sparkles.js
|
|
460
|
-
var
|
|
475
|
+
var __iconNode35 = [
|
|
461
476
|
[
|
|
462
477
|
"path",
|
|
463
478
|
{
|
|
@@ -469,18 +484,18 @@ var __iconNode33 = [
|
|
|
469
484
|
["path", { d: "M22 4h-4", key: "gwowj6" }],
|
|
470
485
|
["circle", { cx: "4", cy: "20", r: "2", key: "6kqj1y" }]
|
|
471
486
|
];
|
|
472
|
-
var Sparkles = createLucideIcon("sparkles",
|
|
487
|
+
var Sparkles = createLucideIcon("sparkles", __iconNode35);
|
|
473
488
|
|
|
474
489
|
// node_modules/.pnpm/lucide-react@0.574.0_react@19.2.4/node_modules/lucide-react/dist/esm/icons/target.js
|
|
475
|
-
var
|
|
490
|
+
var __iconNode36 = [
|
|
476
491
|
["circle", { cx: "12", cy: "12", r: "10", key: "1mglay" }],
|
|
477
492
|
["circle", { cx: "12", cy: "12", r: "6", key: "1vlfrh" }],
|
|
478
493
|
["circle", { cx: "12", cy: "12", r: "2", key: "1c9p78" }]
|
|
479
494
|
];
|
|
480
|
-
var Target = createLucideIcon("target",
|
|
495
|
+
var Target = createLucideIcon("target", __iconNode36);
|
|
481
496
|
|
|
482
497
|
// node_modules/.pnpm/lucide-react@0.574.0_react@19.2.4/node_modules/lucide-react/dist/esm/icons/triangle-alert.js
|
|
483
|
-
var
|
|
498
|
+
var __iconNode37 = [
|
|
484
499
|
[
|
|
485
500
|
"path",
|
|
486
501
|
{
|
|
@@ -491,34 +506,51 @@ var __iconNode35 = [
|
|
|
491
506
|
["path", { d: "M12 9v4", key: "juzpu7" }],
|
|
492
507
|
["path", { d: "M12 17h.01", key: "p32p05" }]
|
|
493
508
|
];
|
|
494
|
-
var TriangleAlert = createLucideIcon("triangle-alert",
|
|
509
|
+
var TriangleAlert = createLucideIcon("triangle-alert", __iconNode37);
|
|
510
|
+
|
|
511
|
+
// node_modules/.pnpm/lucide-react@0.574.0_react@19.2.4/node_modules/lucide-react/dist/esm/icons/user-minus.js
|
|
512
|
+
var __iconNode38 = [
|
|
513
|
+
["path", { d: "M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2", key: "1yyitq" }],
|
|
514
|
+
["circle", { cx: "9", cy: "7", r: "4", key: "nufk8" }],
|
|
515
|
+
["line", { x1: "22", x2: "16", y1: "11", y2: "11", key: "1shjgl" }]
|
|
516
|
+
];
|
|
517
|
+
var UserMinus = createLucideIcon("user-minus", __iconNode38);
|
|
518
|
+
|
|
519
|
+
// node_modules/.pnpm/lucide-react@0.574.0_react@19.2.4/node_modules/lucide-react/dist/esm/icons/user-plus.js
|
|
520
|
+
var __iconNode39 = [
|
|
521
|
+
["path", { d: "M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2", key: "1yyitq" }],
|
|
522
|
+
["circle", { cx: "9", cy: "7", r: "4", key: "nufk8" }],
|
|
523
|
+
["line", { x1: "19", x2: "19", y1: "8", y2: "14", key: "1bvyxn" }],
|
|
524
|
+
["line", { x1: "22", x2: "16", y1: "11", y2: "11", key: "1shjgl" }]
|
|
525
|
+
];
|
|
526
|
+
var UserPlus = createLucideIcon("user-plus", __iconNode39);
|
|
495
527
|
|
|
496
528
|
// node_modules/.pnpm/lucide-react@0.574.0_react@19.2.4/node_modules/lucide-react/dist/esm/icons/user.js
|
|
497
|
-
var
|
|
529
|
+
var __iconNode40 = [
|
|
498
530
|
["path", { d: "M19 21v-2a4 4 0 0 0-4-4H9a4 4 0 0 0-4 4v2", key: "975kel" }],
|
|
499
531
|
["circle", { cx: "12", cy: "7", r: "4", key: "17ys0d" }]
|
|
500
532
|
];
|
|
501
|
-
var User = createLucideIcon("user",
|
|
533
|
+
var User = createLucideIcon("user", __iconNode40);
|
|
502
534
|
|
|
503
535
|
// node_modules/.pnpm/lucide-react@0.574.0_react@19.2.4/node_modules/lucide-react/dist/esm/icons/users.js
|
|
504
|
-
var
|
|
536
|
+
var __iconNode41 = [
|
|
505
537
|
["path", { d: "M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2", key: "1yyitq" }],
|
|
506
538
|
["path", { d: "M16 3.128a4 4 0 0 1 0 7.744", key: "16gr8j" }],
|
|
507
539
|
["path", { d: "M22 21v-2a4 4 0 0 0-3-3.87", key: "kshegd" }],
|
|
508
540
|
["circle", { cx: "9", cy: "7", r: "4", key: "nufk8" }]
|
|
509
541
|
];
|
|
510
|
-
var Users = createLucideIcon("users",
|
|
542
|
+
var Users = createLucideIcon("users", __iconNode41);
|
|
511
543
|
|
|
512
544
|
// node_modules/.pnpm/lucide-react@0.574.0_react@19.2.4/node_modules/lucide-react/dist/esm/icons/workflow.js
|
|
513
|
-
var
|
|
545
|
+
var __iconNode42 = [
|
|
514
546
|
["rect", { width: "8", height: "8", x: "3", y: "3", rx: "2", key: "by2w9f" }],
|
|
515
547
|
["path", { d: "M7 11v4a2 2 0 0 0 2 2h4", key: "xkn7yn" }],
|
|
516
548
|
["rect", { width: "8", height: "8", x: "13", y: "13", rx: "2", key: "1cgmvn" }]
|
|
517
549
|
];
|
|
518
|
-
var Workflow = createLucideIcon("workflow",
|
|
550
|
+
var Workflow = createLucideIcon("workflow", __iconNode42);
|
|
519
551
|
|
|
520
552
|
// node_modules/.pnpm/lucide-react@0.574.0_react@19.2.4/node_modules/lucide-react/dist/esm/icons/wrench.js
|
|
521
|
-
var
|
|
553
|
+
var __iconNode43 = [
|
|
522
554
|
[
|
|
523
555
|
"path",
|
|
524
556
|
{
|
|
@@ -527,17 +559,17 @@ var __iconNode39 = [
|
|
|
527
559
|
}
|
|
528
560
|
]
|
|
529
561
|
];
|
|
530
|
-
var Wrench = createLucideIcon("wrench",
|
|
562
|
+
var Wrench = createLucideIcon("wrench", __iconNode43);
|
|
531
563
|
|
|
532
564
|
// node_modules/.pnpm/lucide-react@0.574.0_react@19.2.4/node_modules/lucide-react/dist/esm/icons/x.js
|
|
533
|
-
var
|
|
565
|
+
var __iconNode44 = [
|
|
534
566
|
["path", { d: "M18 6 6 18", key: "1bl5f8" }],
|
|
535
567
|
["path", { d: "m6 6 12 12", key: "d8bk6v" }]
|
|
536
568
|
];
|
|
537
|
-
var X = createLucideIcon("x",
|
|
569
|
+
var X = createLucideIcon("x", __iconNode44);
|
|
538
570
|
|
|
539
571
|
// node_modules/.pnpm/lucide-react@0.574.0_react@19.2.4/node_modules/lucide-react/dist/esm/icons/zap.js
|
|
540
|
-
var
|
|
572
|
+
var __iconNode45 = [
|
|
541
573
|
[
|
|
542
574
|
"path",
|
|
543
575
|
{
|
|
@@ -546,10 +578,10 @@ var __iconNode41 = [
|
|
|
546
578
|
}
|
|
547
579
|
]
|
|
548
580
|
];
|
|
549
|
-
var Zap = createLucideIcon("zap",
|
|
581
|
+
var Zap = createLucideIcon("zap", __iconNode45);
|
|
550
582
|
|
|
551
583
|
// src/ui/components/WizardShell.tsx
|
|
552
|
-
import { useEffect as
|
|
584
|
+
import { useEffect as useEffect8 } from "react";
|
|
553
585
|
|
|
554
586
|
// src/ui/context/WizardContext.tsx
|
|
555
587
|
import { createContext, useCallback, useContext, useState } from "react";
|
|
@@ -567,17 +599,33 @@ var MANUAL_STEPS = [
|
|
|
567
599
|
"done"
|
|
568
600
|
];
|
|
569
601
|
var AI_STEPS = ["onboarding", "ai-wizard", "provision", "done"];
|
|
602
|
+
var UPDATE_STEPS = [
|
|
603
|
+
"onboarding",
|
|
604
|
+
"existing-company",
|
|
605
|
+
"preset",
|
|
606
|
+
"modules",
|
|
607
|
+
"roles",
|
|
608
|
+
"summary",
|
|
609
|
+
"preview",
|
|
610
|
+
"provision",
|
|
611
|
+
"done"
|
|
612
|
+
];
|
|
613
|
+
function stepsForPath(path) {
|
|
614
|
+
if (path === "ai") return AI_STEPS;
|
|
615
|
+
if (path === "update") return UPDATE_STEPS;
|
|
616
|
+
return MANUAL_STEPS;
|
|
617
|
+
}
|
|
570
618
|
function getTotalSteps(state) {
|
|
571
|
-
const steps = state.path
|
|
619
|
+
const steps = stepsForPath(state.path);
|
|
572
620
|
return steps.filter((s) => s !== "onboarding" && s !== "provision" && s !== "done").length;
|
|
573
621
|
}
|
|
574
622
|
function getUserStepIndex(state) {
|
|
575
|
-
const steps = state.path
|
|
623
|
+
const steps = stepsForPath(state.path);
|
|
576
624
|
const userSteps = steps.filter((s) => s !== "onboarding" && s !== "provision" && s !== "done");
|
|
577
625
|
return userSteps.indexOf(state.step) + 1;
|
|
578
626
|
}
|
|
579
627
|
function nextStep(state) {
|
|
580
|
-
const steps = state.path
|
|
628
|
+
const steps = stepsForPath(state.path);
|
|
581
629
|
const idx = steps.indexOf(state.step);
|
|
582
630
|
return steps[Math.min(idx + 1, steps.length - 1)];
|
|
583
631
|
}
|
|
@@ -622,12 +670,13 @@ var initialState = {
|
|
|
622
670
|
};
|
|
623
671
|
function reducer(state, action) {
|
|
624
672
|
switch (action.type) {
|
|
625
|
-
case "SET_PATH":
|
|
626
|
-
|
|
627
|
-
|
|
628
|
-
|
|
629
|
-
|
|
630
|
-
};
|
|
673
|
+
case "SET_PATH": {
|
|
674
|
+
let step;
|
|
675
|
+
if (action.path === "ai") step = "ai-wizard";
|
|
676
|
+
else if (action.path === "update") step = "existing-company";
|
|
677
|
+
else step = "name";
|
|
678
|
+
return { ...state, path: action.path, step };
|
|
679
|
+
}
|
|
631
680
|
case "GO_TO":
|
|
632
681
|
return { ...state, step: action.step, error: null };
|
|
633
682
|
case "SET_COMPANY_NAME":
|
|
@@ -4046,7 +4095,7 @@ function StepOnboarding() {
|
|
|
4046
4095
|
/* @__PURE__ */ jsx3("h1", { className: "text-2xl font-semibold tracking-tight", children: "Create a company" }),
|
|
4047
4096
|
/* @__PURE__ */ jsx3("p", { className: "text-muted-foreground", children: "Choose how you'd like to set up your AI agent organization." })
|
|
4048
4097
|
] }),
|
|
4049
|
-
/* @__PURE__ */ jsxs("div", { className: "grid gap-4 sm:grid-cols-
|
|
4098
|
+
/* @__PURE__ */ jsxs("div", { className: "grid gap-4 sm:grid-cols-3", children: [
|
|
4050
4099
|
/* @__PURE__ */ jsx3(
|
|
4051
4100
|
PathCard,
|
|
4052
4101
|
{
|
|
@@ -4076,6 +4125,21 @@ function StepOnboarding() {
|
|
|
4076
4125
|
],
|
|
4077
4126
|
onClick: () => dispatch({ type: "SET_PATH", path: "ai" })
|
|
4078
4127
|
}
|
|
4128
|
+
),
|
|
4129
|
+
/* @__PURE__ */ jsx3(
|
|
4130
|
+
PathCard,
|
|
4131
|
+
{
|
|
4132
|
+
icon: RefreshCw,
|
|
4133
|
+
title: "Update existing company",
|
|
4134
|
+
description: "Re-provision or modify an existing org",
|
|
4135
|
+
details: [
|
|
4136
|
+
"Select company by ID",
|
|
4137
|
+
"Choose preset, modules, and roles",
|
|
4138
|
+
"Preview changes before applying",
|
|
4139
|
+
"Preserves individual skill assignments"
|
|
4140
|
+
],
|
|
4141
|
+
onClick: () => dispatch({ type: "SET_PATH", path: "update" })
|
|
4142
|
+
}
|
|
4079
4143
|
)
|
|
4080
4144
|
] }),
|
|
4081
4145
|
/* @__PURE__ */ jsxs("div", { className: "flex flex-wrap items-center justify-center gap-2 pt-2", children: [
|
|
@@ -6085,7 +6149,13 @@ function StepSummary() {
|
|
|
6085
6149
|
] }),
|
|
6086
6150
|
/* @__PURE__ */ jsxs9("div", { className: "flex justify-end gap-3", children: [
|
|
6087
6151
|
/* @__PURE__ */ jsx15(Button, { variant: "outline", onClick: () => dispatch({ type: "GO_TO", step: "roles" }), children: "Back" }),
|
|
6088
|
-
/* @__PURE__ */ jsx15(
|
|
6152
|
+
/* @__PURE__ */ jsx15(
|
|
6153
|
+
Button,
|
|
6154
|
+
{
|
|
6155
|
+
onClick: () => dispatch({ type: "GO_TO", step: state.path === "update" ? "preview" : "provision" }),
|
|
6156
|
+
children: state.existingCompanyId ? "Preview Changes" : "Create Company"
|
|
6157
|
+
}
|
|
6158
|
+
)
|
|
6089
6159
|
] })
|
|
6090
6160
|
] });
|
|
6091
6161
|
}
|
|
@@ -7051,74 +7121,283 @@ function StepProvision() {
|
|
|
7051
7121
|
] });
|
|
7052
7122
|
}
|
|
7053
7123
|
|
|
7054
|
-
// src/ui/components/steps/
|
|
7124
|
+
// src/ui/components/steps/StepPreview.tsx
|
|
7125
|
+
import { useEffect as useEffect7, useRef as useRef6, useState as useState9 } from "react";
|
|
7126
|
+
import { usePluginAction as usePluginAction6 } from "@paperclipai/plugin-sdk/ui";
|
|
7055
7127
|
import { jsx as jsx18, jsxs as jsxs12 } from "react/jsx-runtime";
|
|
7128
|
+
function AgentActionIcon({ action }) {
|
|
7129
|
+
switch (action) {
|
|
7130
|
+
case "hire":
|
|
7131
|
+
return /* @__PURE__ */ jsx18(UserPlus, { className: "h-4 w-4 text-green-500 shrink-0" });
|
|
7132
|
+
case "update":
|
|
7133
|
+
return /* @__PURE__ */ jsx18(RefreshCw, { className: "h-4 w-4 text-blue-500 shrink-0" });
|
|
7134
|
+
case "retire":
|
|
7135
|
+
return /* @__PURE__ */ jsx18(UserMinus, { className: "h-4 w-4 text-red-500 shrink-0" });
|
|
7136
|
+
default:
|
|
7137
|
+
return null;
|
|
7138
|
+
}
|
|
7139
|
+
}
|
|
7140
|
+
function ActionBadge({ action }) {
|
|
7141
|
+
const colorMap = {
|
|
7142
|
+
hire: "bg-green-500/10 text-green-700 dark:text-green-400 border-green-500/20",
|
|
7143
|
+
update: "bg-blue-500/10 text-blue-700 dark:text-blue-400 border-blue-500/20",
|
|
7144
|
+
retire: "bg-red-500/10 text-red-700 dark:text-red-400 border-red-500/20",
|
|
7145
|
+
create: "bg-green-500/10 text-green-700 dark:text-green-400 border-green-500/20"
|
|
7146
|
+
};
|
|
7147
|
+
const cls = colorMap[action] || "bg-muted text-muted-foreground border-border";
|
|
7148
|
+
return /* @__PURE__ */ jsx18(
|
|
7149
|
+
"span",
|
|
7150
|
+
{
|
|
7151
|
+
className: `inline-flex items-center rounded border px-1.5 py-0.5 text-xs font-medium ${cls}`,
|
|
7152
|
+
children: action
|
|
7153
|
+
}
|
|
7154
|
+
);
|
|
7155
|
+
}
|
|
7156
|
+
function StepPreview() {
|
|
7157
|
+
const state = useWizard();
|
|
7158
|
+
const dispatch = useWizardDispatch();
|
|
7159
|
+
const previewAction = usePluginAction6("preview-company-update");
|
|
7160
|
+
const [diff, setDiff] = useState9(null);
|
|
7161
|
+
const [loading, setLoading] = useState9(true);
|
|
7162
|
+
const [error, setError] = useState9(null);
|
|
7163
|
+
const started = useRef6(false);
|
|
7164
|
+
useEffect7(() => {
|
|
7165
|
+
if (started.current) return;
|
|
7166
|
+
started.current = true;
|
|
7167
|
+
const allRoles = getAllRoles(state);
|
|
7168
|
+
previewAction({
|
|
7169
|
+
existingCompanyId: state.existingCompanyId,
|
|
7170
|
+
companyName: state.companyName || void 0,
|
|
7171
|
+
presetName: state.presetName,
|
|
7172
|
+
selectedModules: state.selectedModules,
|
|
7173
|
+
selectedRoles: state.selectedRoles,
|
|
7174
|
+
goals: state.goals.length > 0 ? state.goals : void 0,
|
|
7175
|
+
projects: state.projects.length > 0 ? state.projects : void 0,
|
|
7176
|
+
issues: state.issues.length > 0 ? state.issues : void 0,
|
|
7177
|
+
allRoles
|
|
7178
|
+
}).then((result) => {
|
|
7179
|
+
if (result?.error) {
|
|
7180
|
+
setError(result.error);
|
|
7181
|
+
setLoading(false);
|
|
7182
|
+
return;
|
|
7183
|
+
}
|
|
7184
|
+
setDiff(result?.diff ?? null);
|
|
7185
|
+
setLoading(false);
|
|
7186
|
+
}).catch((err) => {
|
|
7187
|
+
setError(err instanceof Error ? err.message : "Preview failed");
|
|
7188
|
+
setLoading(false);
|
|
7189
|
+
});
|
|
7190
|
+
}, []);
|
|
7191
|
+
if (loading) {
|
|
7192
|
+
return /* @__PURE__ */ jsx18("div", { className: "space-y-6", children: /* @__PURE__ */ jsxs12("div", { className: "space-y-2", children: [
|
|
7193
|
+
/* @__PURE__ */ jsxs12("h2", { className: "text-xl font-semibold tracking-tight flex items-center gap-2", children: [
|
|
7194
|
+
/* @__PURE__ */ jsx18(LoaderCircle, { className: "h-5 w-5 animate-spin" }),
|
|
7195
|
+
"Loading preview..."
|
|
7196
|
+
] }),
|
|
7197
|
+
/* @__PURE__ */ jsx18("p", { className: "text-sm text-muted-foreground", children: "Comparing your configuration against the existing company." })
|
|
7198
|
+
] }) });
|
|
7199
|
+
}
|
|
7200
|
+
if (error || !diff) {
|
|
7201
|
+
return /* @__PURE__ */ jsxs12("div", { className: "space-y-6", children: [
|
|
7202
|
+
/* @__PURE__ */ jsx18("div", { className: "space-y-2", children: /* @__PURE__ */ jsx18("h2", { className: "text-xl font-semibold tracking-tight", children: "Preview failed" }) }),
|
|
7203
|
+
/* @__PURE__ */ jsxs12("div", { className: "rounded-lg border border-destructive/30 bg-destructive/5 p-4 space-y-3", children: [
|
|
7204
|
+
/* @__PURE__ */ jsxs12("div", { className: "flex items-start gap-3", children: [
|
|
7205
|
+
/* @__PURE__ */ jsx18(CircleAlert, { className: "h-5 w-5 text-destructive shrink-0 mt-0.5" }),
|
|
7206
|
+
/* @__PURE__ */ jsxs12("div", { className: "space-y-1", children: [
|
|
7207
|
+
/* @__PURE__ */ jsx18("p", { className: "text-sm font-medium", children: "Could not load preview" }),
|
|
7208
|
+
/* @__PURE__ */ jsx18("p", { className: "text-sm text-muted-foreground", children: error || "No diff data returned." })
|
|
7209
|
+
] })
|
|
7210
|
+
] }),
|
|
7211
|
+
/* @__PURE__ */ jsx18("div", { className: "pl-8", children: /* @__PURE__ */ jsx18(
|
|
7212
|
+
Button,
|
|
7213
|
+
{
|
|
7214
|
+
variant: "ghost",
|
|
7215
|
+
size: "sm",
|
|
7216
|
+
onClick: () => dispatch({ type: "GO_TO", step: "summary" }),
|
|
7217
|
+
children: "Back to Summary"
|
|
7218
|
+
}
|
|
7219
|
+
) })
|
|
7220
|
+
] })
|
|
7221
|
+
] });
|
|
7222
|
+
}
|
|
7223
|
+
const hasRetire = diff.agents.some((a) => a.action === "retire");
|
|
7224
|
+
return /* @__PURE__ */ jsxs12("div", { className: "space-y-6", children: [
|
|
7225
|
+
/* @__PURE__ */ jsxs12("div", { className: "space-y-2", children: [
|
|
7226
|
+
/* @__PURE__ */ jsx18("h2", { className: "text-xl font-semibold tracking-tight", children: "Preview changes" }),
|
|
7227
|
+
/* @__PURE__ */ jsxs12("p", { className: "text-sm text-muted-foreground", children: [
|
|
7228
|
+
"Review what will change when you update",
|
|
7229
|
+
" ",
|
|
7230
|
+
/* @__PURE__ */ jsx18("span", { className: "font-medium", children: diff.companyName }),
|
|
7231
|
+
"."
|
|
7232
|
+
] })
|
|
7233
|
+
] }),
|
|
7234
|
+
/* @__PURE__ */ jsxs12("div", { className: "rounded-lg border p-4 space-y-3", children: [
|
|
7235
|
+
/* @__PURE__ */ jsxs12("h3", { className: "text-sm font-semibold", children: [
|
|
7236
|
+
"Agents (",
|
|
7237
|
+
diff.agents.length,
|
|
7238
|
+
")"
|
|
7239
|
+
] }),
|
|
7240
|
+
/* @__PURE__ */ jsx18("ul", { className: "space-y-2", children: diff.agents.map((agent) => /* @__PURE__ */ jsxs12("li", { className: "flex items-center gap-2", children: [
|
|
7241
|
+
/* @__PURE__ */ jsx18(AgentActionIcon, { action: agent.action }),
|
|
7242
|
+
/* @__PURE__ */ jsx18("span", { className: "text-sm flex-1", children: agent.title }),
|
|
7243
|
+
/* @__PURE__ */ jsx18(ActionBadge, { action: agent.action })
|
|
7244
|
+
] }, `${agent.role}-${agent.action}`)) })
|
|
7245
|
+
] }),
|
|
7246
|
+
diff.routines.length > 0 && /* @__PURE__ */ jsxs12("div", { className: "rounded-lg border p-4 space-y-3", children: [
|
|
7247
|
+
/* @__PURE__ */ jsxs12("h3", { className: "text-sm font-semibold", children: [
|
|
7248
|
+
"Routines (",
|
|
7249
|
+
diff.routines.length,
|
|
7250
|
+
")"
|
|
7251
|
+
] }),
|
|
7252
|
+
/* @__PURE__ */ jsx18("ul", { className: "space-y-2", children: diff.routines.map((routine) => /* @__PURE__ */ jsxs12("li", { className: "flex items-center gap-2", children: [
|
|
7253
|
+
/* @__PURE__ */ jsx18(CircleCheckBig, { className: "h-4 w-4 text-muted-foreground shrink-0" }),
|
|
7254
|
+
/* @__PURE__ */ jsx18("span", { className: "text-sm flex-1", children: routine.title }),
|
|
7255
|
+
/* @__PURE__ */ jsx18(ActionBadge, { action: routine.action })
|
|
7256
|
+
] }, routine.title)) })
|
|
7257
|
+
] }),
|
|
7258
|
+
diff.desiredSkillsPreserved.length > 0 && /* @__PURE__ */ jsxs12("div", { className: "rounded-lg border p-4 space-y-3", children: [
|
|
7259
|
+
/* @__PURE__ */ jsx18("h3", { className: "text-sm font-semibold", children: "Preserved skills" }),
|
|
7260
|
+
/* @__PURE__ */ jsx18("p", { className: "text-xs text-muted-foreground", children: "The following agents have individually-assigned skills that will be preserved during the update." }),
|
|
7261
|
+
/* @__PURE__ */ jsx18("ul", { className: "space-y-2", children: diff.desiredSkillsPreserved.map((entry) => /* @__PURE__ */ jsxs12("li", { className: "text-sm", children: [
|
|
7262
|
+
/* @__PURE__ */ jsx18("span", { className: "font-medium", children: entry.agentName }),
|
|
7263
|
+
/* @__PURE__ */ jsxs12("span", { className: "text-muted-foreground", children: [
|
|
7264
|
+
" \u2014 ",
|
|
7265
|
+
entry.skills.join(", ")
|
|
7266
|
+
] })
|
|
7267
|
+
] }, entry.agentId)) })
|
|
7268
|
+
] }),
|
|
7269
|
+
hasRetire && /* @__PURE__ */ jsxs12("div", { className: "flex items-start gap-3 rounded-lg border border-amber-500/30 bg-amber-500/10 dark:bg-amber-500/5 p-4", children: [
|
|
7270
|
+
/* @__PURE__ */ jsx18(CircleAlert, { className: "h-4 w-4 text-amber-500 dark:text-amber-400 shrink-0 mt-0.5" }),
|
|
7271
|
+
/* @__PURE__ */ jsxs12("div", { className: "space-y-1", children: [
|
|
7272
|
+
/* @__PURE__ */ jsx18("p", { className: "text-sm font-medium text-amber-800 dark:text-amber-200", children: "Retired agents will not be auto-terminated" }),
|
|
7273
|
+
/* @__PURE__ */ jsx18("p", { className: "text-xs text-amber-700 dark:text-amber-300", children: "Roles removed from the configuration are marked for retirement, but the corresponding agents will not be terminated automatically. A review issue will be created so you can decide whether to terminate each agent." })
|
|
7274
|
+
] })
|
|
7275
|
+
] }),
|
|
7276
|
+
/* @__PURE__ */ jsx18("div", { className: "rounded-lg border p-4", children: /* @__PURE__ */ jsxs12("p", { className: "text-sm text-muted-foreground", children: [
|
|
7277
|
+
/* @__PURE__ */ jsx18("span", { className: "font-medium text-foreground", children: diff.plannedFiles }),
|
|
7278
|
+
" file",
|
|
7279
|
+
diff.plannedFiles !== 1 ? "s" : "",
|
|
7280
|
+
" will be generated in the company workspace."
|
|
7281
|
+
] }) }),
|
|
7282
|
+
/* @__PURE__ */ jsxs12("div", { className: "flex justify-end gap-3", children: [
|
|
7283
|
+
/* @__PURE__ */ jsx18(Button, { variant: "outline", onClick: () => dispatch({ type: "GO_TO", step: "summary" }), children: "Back" }),
|
|
7284
|
+
/* @__PURE__ */ jsx18(Button, { onClick: () => dispatch({ type: "GO_TO", step: "provision" }), children: "Apply Update" })
|
|
7285
|
+
] })
|
|
7286
|
+
] });
|
|
7287
|
+
}
|
|
7288
|
+
|
|
7289
|
+
// src/ui/components/steps/StepExistingCompany.tsx
|
|
7290
|
+
import { useState as useState10 } from "react";
|
|
7291
|
+
import { jsx as jsx19, jsxs as jsxs13 } from "react/jsx-runtime";
|
|
7292
|
+
function StepExistingCompany() {
|
|
7293
|
+
const state = useWizard();
|
|
7294
|
+
const dispatch = useWizardDispatch();
|
|
7295
|
+
const [touched, setTouched] = useState10(false);
|
|
7296
|
+
const isEmpty = !state.existingCompanyId.trim();
|
|
7297
|
+
const handleNext = () => {
|
|
7298
|
+
if (isEmpty) {
|
|
7299
|
+
setTouched(true);
|
|
7300
|
+
return;
|
|
7301
|
+
}
|
|
7302
|
+
dispatch({ type: "GO_TO", step: "preset" });
|
|
7303
|
+
};
|
|
7304
|
+
return /* @__PURE__ */ jsxs13("div", { className: "space-y-6", children: [
|
|
7305
|
+
/* @__PURE__ */ jsxs13("div", { className: "space-y-2", children: [
|
|
7306
|
+
/* @__PURE__ */ jsx19("h2", { className: "text-xl font-semibold tracking-tight", children: "Update existing company" }),
|
|
7307
|
+
/* @__PURE__ */ jsx19("p", { className: "text-sm text-muted-foreground", children: "Enter the ID of the company you want to update. This will load the existing configuration and allow you to modify modules, roles, and settings." })
|
|
7308
|
+
] }),
|
|
7309
|
+
/* @__PURE__ */ jsxs13("div", { className: "space-y-3", children: [
|
|
7310
|
+
/* @__PURE__ */ jsx19(
|
|
7311
|
+
Input,
|
|
7312
|
+
{
|
|
7313
|
+
placeholder: "e.g. 42a5aea0-1234-5678-90ab-cdef12345678",
|
|
7314
|
+
value: state.existingCompanyId,
|
|
7315
|
+
onChange: (e) => dispatch({ type: "SET_EXISTING_COMPANY_ID", value: e.target.value }),
|
|
7316
|
+
onKeyDown: (e) => e.key === "Enter" && handleNext(),
|
|
7317
|
+
autoFocus: true,
|
|
7318
|
+
className: "text-base h-11"
|
|
7319
|
+
}
|
|
7320
|
+
),
|
|
7321
|
+
touched && isEmpty && /* @__PURE__ */ jsx19("p", { className: "text-sm text-destructive", children: "Please enter a company ID." })
|
|
7322
|
+
] }),
|
|
7323
|
+
/* @__PURE__ */ jsxs13("div", { className: "flex justify-end gap-3", children: [
|
|
7324
|
+
/* @__PURE__ */ jsx19(Button, { variant: "outline", onClick: () => dispatch({ type: "GO_TO", step: "onboarding" }), children: "Back" }),
|
|
7325
|
+
/* @__PURE__ */ jsxs13(Button, { onClick: handleNext, disabled: isEmpty, children: [
|
|
7326
|
+
"Next",
|
|
7327
|
+
/* @__PURE__ */ jsx19(ArrowRight, { className: "h-4 w-4 ml-1.5" })
|
|
7328
|
+
] })
|
|
7329
|
+
] })
|
|
7330
|
+
] });
|
|
7331
|
+
}
|
|
7332
|
+
|
|
7333
|
+
// src/ui/components/steps/StepDone.tsx
|
|
7334
|
+
import { jsx as jsx20, jsxs as jsxs14 } from "react/jsx-runtime";
|
|
7056
7335
|
function StepDone() {
|
|
7057
7336
|
const state = useWizard();
|
|
7058
7337
|
const dispatch = useWizardDispatch();
|
|
7059
7338
|
const allRoles = getAllRoles(state);
|
|
7060
7339
|
const result = state.provisionResult;
|
|
7061
|
-
return /* @__PURE__ */
|
|
7062
|
-
/* @__PURE__ */
|
|
7063
|
-
/* @__PURE__ */
|
|
7064
|
-
/* @__PURE__ */
|
|
7065
|
-
/* @__PURE__ */
|
|
7066
|
-
/* @__PURE__ */
|
|
7340
|
+
return /* @__PURE__ */ jsxs14("div", { className: "space-y-6", children: [
|
|
7341
|
+
/* @__PURE__ */ jsxs14("div", { className: "flex items-start gap-3", children: [
|
|
7342
|
+
/* @__PURE__ */ jsx20(CircleCheck, { className: "h-6 w-6 text-green-600 shrink-0 mt-0.5" }),
|
|
7343
|
+
/* @__PURE__ */ jsxs14("div", { children: [
|
|
7344
|
+
/* @__PURE__ */ jsx20("h2", { className: "text-xl font-semibold tracking-tight", children: state.companyName }),
|
|
7345
|
+
/* @__PURE__ */ jsx20("p", { className: "text-sm text-muted-foreground mt-1", children: state.existingCompanyId ? "Workspace has been assembled and bootstrap tasks were added to the existing Paperclip company." : "Company has been assembled and registered with Paperclip." })
|
|
7067
7346
|
] })
|
|
7068
7347
|
] }),
|
|
7069
|
-
/* @__PURE__ */
|
|
7070
|
-
state.goals[0]?.title && /* @__PURE__ */
|
|
7071
|
-
/* @__PURE__ */
|
|
7072
|
-
/* @__PURE__ */
|
|
7348
|
+
/* @__PURE__ */ jsx20(Card, { children: /* @__PURE__ */ jsxs14(CardContent, { className: "pt-6 space-y-4", children: [
|
|
7349
|
+
state.goals[0]?.title && /* @__PURE__ */ jsxs14("div", { children: [
|
|
7350
|
+
/* @__PURE__ */ jsx20("p", { className: "text-xs font-medium text-muted-foreground uppercase tracking-wider mb-1", children: "Goal" }),
|
|
7351
|
+
/* @__PURE__ */ jsx20("p", { className: "text-sm", children: state.goals[0].title })
|
|
7073
7352
|
] }),
|
|
7074
|
-
/* @__PURE__ */
|
|
7075
|
-
/* @__PURE__ */
|
|
7353
|
+
/* @__PURE__ */ jsxs14("div", { children: [
|
|
7354
|
+
/* @__PURE__ */ jsxs14("p", { className: "text-xs font-medium text-muted-foreground uppercase tracking-wider mb-2", children: [
|
|
7076
7355
|
"Team (",
|
|
7077
7356
|
allRoles.length,
|
|
7078
7357
|
" agents)"
|
|
7079
7358
|
] }),
|
|
7080
|
-
/* @__PURE__ */
|
|
7359
|
+
/* @__PURE__ */ jsx20("div", { className: "flex flex-wrap gap-1.5", children: allRoles.map((r2) => {
|
|
7081
7360
|
const role = state.roles.find((ro) => ro.name === r2);
|
|
7082
|
-
return /* @__PURE__ */
|
|
7361
|
+
return /* @__PURE__ */ jsx20(Badge, { variant: "outline", className: "text-xs", children: role?.title || r2 }, r2);
|
|
7083
7362
|
}) })
|
|
7084
7363
|
] }),
|
|
7085
|
-
/* @__PURE__ */
|
|
7086
|
-
/* @__PURE__ */
|
|
7364
|
+
/* @__PURE__ */ jsxs14("div", { children: [
|
|
7365
|
+
/* @__PURE__ */ jsxs14("p", { className: "text-xs font-medium text-muted-foreground uppercase tracking-wider mb-2", children: [
|
|
7087
7366
|
"Modules (",
|
|
7088
7367
|
state.selectedModules.length,
|
|
7089
7368
|
")"
|
|
7090
7369
|
] }),
|
|
7091
|
-
/* @__PURE__ */
|
|
7370
|
+
/* @__PURE__ */ jsx20("div", { className: "flex flex-wrap gap-1.5", children: state.selectedModules.map((m) => /* @__PURE__ */ jsx20(Badge, { variant: "secondary", className: "text-xs", children: m }, m)) })
|
|
7092
7371
|
] }),
|
|
7093
|
-
result?.issueIds && result.issueIds.length > 0 && /* @__PURE__ */
|
|
7094
|
-
/* @__PURE__ */
|
|
7095
|
-
/* @__PURE__ */
|
|
7372
|
+
result?.issueIds && result.issueIds.length > 0 && /* @__PURE__ */ jsxs14("div", { children: [
|
|
7373
|
+
/* @__PURE__ */ jsx20("p", { className: "text-xs font-medium text-muted-foreground uppercase tracking-wider mb-1", children: "Issues" }),
|
|
7374
|
+
/* @__PURE__ */ jsxs14("p", { className: "text-sm", children: [
|
|
7096
7375
|
result.issueIds.length,
|
|
7097
7376
|
" issues provisioned"
|
|
7098
7377
|
] })
|
|
7099
7378
|
] }),
|
|
7100
|
-
state.presetName && /* @__PURE__ */
|
|
7101
|
-
/* @__PURE__ */
|
|
7102
|
-
/* @__PURE__ */
|
|
7379
|
+
state.presetName && /* @__PURE__ */ jsxs14("div", { children: [
|
|
7380
|
+
/* @__PURE__ */ jsx20("p", { className: "text-xs font-medium text-muted-foreground uppercase tracking-wider mb-1", children: "Preset" }),
|
|
7381
|
+
/* @__PURE__ */ jsx20("p", { className: "text-sm capitalize", children: state.presetName })
|
|
7103
7382
|
] }),
|
|
7104
|
-
result?.companyId && /* @__PURE__ */
|
|
7105
|
-
/* @__PURE__ */
|
|
7106
|
-
/* @__PURE__ */
|
|
7383
|
+
result?.companyId && /* @__PURE__ */ jsxs14("div", { children: [
|
|
7384
|
+
/* @__PURE__ */ jsx20("p", { className: "text-xs font-medium text-muted-foreground uppercase tracking-wider mb-1", children: "Company ID" }),
|
|
7385
|
+
/* @__PURE__ */ jsx20("p", { className: "font-mono text-xs", children: result.companyId })
|
|
7107
7386
|
] })
|
|
7108
7387
|
] }) }),
|
|
7109
|
-
/* @__PURE__ */
|
|
7110
|
-
/* @__PURE__ */
|
|
7111
|
-
/* @__PURE__ */
|
|
7388
|
+
/* @__PURE__ */ jsxs14("div", { className: "flex gap-3", children: [
|
|
7389
|
+
/* @__PURE__ */ jsxs14(Button, { variant: "outline", onClick: () => dispatch({ type: "RESET" }), children: [
|
|
7390
|
+
/* @__PURE__ */ jsx20(RotateCcw, { className: "h-4 w-4" }),
|
|
7112
7391
|
"Create another"
|
|
7113
7392
|
] }),
|
|
7114
|
-
/* @__PURE__ */
|
|
7393
|
+
/* @__PURE__ */ jsx20(Button, { asChild: true, children: /* @__PURE__ */ jsxs14(
|
|
7115
7394
|
"a",
|
|
7116
7395
|
{
|
|
7117
7396
|
href: result?.paperclipUrl && result?.issuePrefix ? `${result.paperclipUrl}/${result.issuePrefix}/dashboard` : result?.paperclipUrl || "http://localhost:3100",
|
|
7118
7397
|
target: "_blank",
|
|
7119
7398
|
rel: "noopener noreferrer",
|
|
7120
7399
|
children: [
|
|
7121
|
-
/* @__PURE__ */
|
|
7400
|
+
/* @__PURE__ */ jsx20(ExternalLink, { className: "h-4 w-4" }),
|
|
7122
7401
|
"Open Paperclip"
|
|
7123
7402
|
]
|
|
7124
7403
|
}
|
|
@@ -7128,7 +7407,7 @@ function StepDone() {
|
|
|
7128
7407
|
}
|
|
7129
7408
|
|
|
7130
7409
|
// src/ui/components/WizardShell.tsx
|
|
7131
|
-
import { jsx as
|
|
7410
|
+
import { jsx as jsx21, jsxs as jsxs15 } from "react/jsx-runtime";
|
|
7132
7411
|
var STEP_COMPONENTS = {
|
|
7133
7412
|
onboarding: StepOnboarding,
|
|
7134
7413
|
name: StepName,
|
|
@@ -7137,7 +7416,9 @@ var STEP_COMPONENTS = {
|
|
|
7137
7416
|
preset: StepPreset,
|
|
7138
7417
|
modules: StepModules,
|
|
7139
7418
|
roles: StepRoles,
|
|
7419
|
+
"existing-company": StepExistingCompany,
|
|
7140
7420
|
summary: StepSummary,
|
|
7421
|
+
preview: StepPreview,
|
|
7141
7422
|
"ai-wizard": StepAiWizard,
|
|
7142
7423
|
provision: StepProvision,
|
|
7143
7424
|
done: StepDone
|
|
@@ -7148,15 +7429,15 @@ function StepIndicator() {
|
|
|
7148
7429
|
const total = getTotalSteps(state);
|
|
7149
7430
|
if (current < 1 || state.step === "provision" || state.step === "done" || state.step === "ai-wizard")
|
|
7150
7431
|
return null;
|
|
7151
|
-
return /* @__PURE__ */
|
|
7152
|
-
Array.from({ length: total }, (_, i) => /* @__PURE__ */
|
|
7432
|
+
return /* @__PURE__ */ jsxs15("div", { className: "flex items-center gap-1.5", children: [
|
|
7433
|
+
Array.from({ length: total }, (_, i) => /* @__PURE__ */ jsx21(
|
|
7153
7434
|
"div",
|
|
7154
7435
|
{
|
|
7155
7436
|
className: `h-1.5 rounded-full transition-all duration-300 ${i + 1 <= current ? "w-6 bg-foreground" : "w-1.5 bg-muted-foreground/30"}`
|
|
7156
7437
|
},
|
|
7157
7438
|
i
|
|
7158
7439
|
)),
|
|
7159
|
-
/* @__PURE__ */
|
|
7440
|
+
/* @__PURE__ */ jsxs15("span", { className: "ml-2 text-xs text-muted-foreground", children: [
|
|
7160
7441
|
current,
|
|
7161
7442
|
"/",
|
|
7162
7443
|
total
|
|
@@ -7167,15 +7448,15 @@ function WizardShell() {
|
|
|
7167
7448
|
const state = useWizard();
|
|
7168
7449
|
const dispatch = useWizardDispatch();
|
|
7169
7450
|
const StepComponent = STEP_COMPONENTS[state.step];
|
|
7170
|
-
|
|
7451
|
+
useEffect8(() => {
|
|
7171
7452
|
window.scrollTo({ top: 0 });
|
|
7172
7453
|
}, [state.step]);
|
|
7173
|
-
return /* @__PURE__ */
|
|
7174
|
-
getUserStepIndex(state) >= 1 && state.step !== "provision" && state.step !== "done" && /* @__PURE__ */
|
|
7175
|
-
/* @__PURE__ */
|
|
7176
|
-
state.error && /* @__PURE__ */
|
|
7177
|
-
/* @__PURE__ */
|
|
7178
|
-
/* @__PURE__ */
|
|
7454
|
+
return /* @__PURE__ */ jsxs15("div", { className: "flex flex-col", children: [
|
|
7455
|
+
getUserStepIndex(state) >= 1 && state.step !== "provision" && state.step !== "done" && /* @__PURE__ */ jsx21("div", { className: "flex items-center justify-end px-6 py-3", children: /* @__PURE__ */ jsx21(StepIndicator, {}) }),
|
|
7456
|
+
/* @__PURE__ */ jsx21("main", { className: "flex-1 flex items-start justify-center p-6", children: /* @__PURE__ */ jsx21("div", { className: "w-full max-w-2xl", children: /* @__PURE__ */ jsx21(StepComponent, {}) }) }),
|
|
7457
|
+
state.error && /* @__PURE__ */ jsxs15("div", { className: "fixed bottom-0 inset-x-0 bg-destructive/10 border-t border-destructive/20 px-6 py-3 text-sm text-destructive flex items-center justify-between", children: [
|
|
7458
|
+
/* @__PURE__ */ jsx21("span", { children: state.error }),
|
|
7459
|
+
/* @__PURE__ */ jsx21(
|
|
7179
7460
|
Button,
|
|
7180
7461
|
{
|
|
7181
7462
|
variant: "ghost",
|
|
@@ -7189,30 +7470,30 @@ function WizardShell() {
|
|
|
7189
7470
|
}
|
|
7190
7471
|
|
|
7191
7472
|
// src/ui/index.tsx
|
|
7192
|
-
import { jsx as
|
|
7473
|
+
import { jsx as jsx22, jsxs as jsxs16 } from "react/jsx-runtime";
|
|
7193
7474
|
function WizardPage(_props) {
|
|
7194
7475
|
const { data: templates, loading, error } = usePluginData("templates");
|
|
7195
7476
|
if (error) {
|
|
7196
|
-
return /* @__PURE__ */
|
|
7477
|
+
return /* @__PURE__ */ jsxs16("div", { className: "flex items-center justify-center min-h-[400px] text-sm text-destructive", children: [
|
|
7197
7478
|
"Failed to load templates: ",
|
|
7198
7479
|
error.message
|
|
7199
7480
|
] });
|
|
7200
7481
|
}
|
|
7201
7482
|
if (loading || !templates) {
|
|
7202
|
-
return /* @__PURE__ */
|
|
7203
|
-
/* @__PURE__ */
|
|
7204
|
-
/* @__PURE__ */
|
|
7205
|
-
/* @__PURE__ */
|
|
7206
|
-
/* @__PURE__ */
|
|
7483
|
+
return /* @__PURE__ */ jsxs16("div", { className: "flex flex-col items-center justify-center min-h-[400px] gap-4 text-center px-6", children: [
|
|
7484
|
+
/* @__PURE__ */ jsx22(LoaderCircle, { className: "h-6 w-6 animate-spin text-muted-foreground" }),
|
|
7485
|
+
/* @__PURE__ */ jsxs16("div", { className: "space-y-1.5", children: [
|
|
7486
|
+
/* @__PURE__ */ jsx22("p", { className: "text-sm font-medium", children: "Loading templates" }),
|
|
7487
|
+
/* @__PURE__ */ jsx22("p", { className: "text-xs text-muted-foreground max-w-xs", children: "Checking your templates directory. If no local templates are found, they'll be downloaded from GitHub \u2014 this may take a moment." })
|
|
7207
7488
|
] })
|
|
7208
7489
|
] });
|
|
7209
7490
|
}
|
|
7210
|
-
return /* @__PURE__ */
|
|
7211
|
-
templates.loadErrors && templates.loadErrors.length > 0 && /* @__PURE__ */
|
|
7212
|
-
/* @__PURE__ */
|
|
7213
|
-
/* @__PURE__ */
|
|
7214
|
-
/* @__PURE__ */
|
|
7215
|
-
/* @__PURE__ */
|
|
7491
|
+
return /* @__PURE__ */ jsxs16("div", { className: "space-y-3", children: [
|
|
7492
|
+
templates.loadErrors && templates.loadErrors.length > 0 && /* @__PURE__ */ jsx22("div", { className: "mx-4 mt-4 rounded-lg border border-amber-500/30 bg-amber-500/10 p-3 text-xs text-amber-800 dark:text-amber-200", children: /* @__PURE__ */ jsxs16("div", { className: "flex items-start gap-2", children: [
|
|
7493
|
+
/* @__PURE__ */ jsx22(TriangleAlert, { className: "h-4 w-4 shrink-0 mt-0.5" }),
|
|
7494
|
+
/* @__PURE__ */ jsxs16("div", { children: [
|
|
7495
|
+
/* @__PURE__ */ jsx22("p", { className: "font-medium", children: "Some template files could not be loaded" }),
|
|
7496
|
+
/* @__PURE__ */ jsxs16("p", { className: "mt-0.5 text-amber-700 dark:text-amber-300", children: [
|
|
7216
7497
|
templates.loadErrors.length,
|
|
7217
7498
|
" parse warning",
|
|
7218
7499
|
templates.loadErrors.length > 1 ? "s" : "",
|
|
@@ -7220,7 +7501,7 @@ function WizardPage(_props) {
|
|
|
7220
7501
|
] })
|
|
7221
7502
|
] })
|
|
7222
7503
|
] }) }),
|
|
7223
|
-
/* @__PURE__ */
|
|
7504
|
+
/* @__PURE__ */ jsx22(WizardProvider, { templates, children: /* @__PURE__ */ jsx22(WizardShell, {}) })
|
|
7224
7505
|
] });
|
|
7225
7506
|
}
|
|
7226
7507
|
function ToolbarButton({ context }) {
|
|
@@ -7231,7 +7512,7 @@ function ToolbarButton({ context }) {
|
|
|
7231
7512
|
if (href !== "#") window.history.pushState({}, "", href);
|
|
7232
7513
|
window.dispatchEvent(new PopStateEvent("popstate"));
|
|
7233
7514
|
};
|
|
7234
|
-
return /* @__PURE__ */
|
|
7515
|
+
return /* @__PURE__ */ jsx22(
|
|
7235
7516
|
"a",
|
|
7236
7517
|
{
|
|
7237
7518
|
href,
|
|
@@ -7261,7 +7542,7 @@ function SidebarLink({ context }) {
|
|
|
7261
7542
|
if (href !== "#") window.history.pushState({}, "", href);
|
|
7262
7543
|
window.dispatchEvent(new PopStateEvent("popstate"));
|
|
7263
7544
|
};
|
|
7264
|
-
return /* @__PURE__ */
|
|
7545
|
+
return /* @__PURE__ */ jsxs16(
|
|
7265
7546
|
"a",
|
|
7266
7547
|
{
|
|
7267
7548
|
href,
|
|
@@ -7281,8 +7562,8 @@ function SidebarLink({ context }) {
|
|
|
7281
7562
|
backgroundColor: isActive ? "var(--accent)" : "transparent"
|
|
7282
7563
|
},
|
|
7283
7564
|
children: [
|
|
7284
|
-
/* @__PURE__ */
|
|
7285
|
-
/* @__PURE__ */
|
|
7565
|
+
/* @__PURE__ */ jsx22(Sparkles, { style: { width: 16, height: 16, flexShrink: 0 } }),
|
|
7566
|
+
/* @__PURE__ */ jsx22("span", { style: { overflow: "hidden", textOverflow: "ellipsis", whiteSpace: "nowrap" }, children: "Create Company" })
|
|
7286
7567
|
]
|
|
7287
7568
|
}
|
|
7288
7569
|
);
|
|
@@ -7311,6 +7592,8 @@ lucide-react/dist/esm/icons/check.js:
|
|
|
7311
7592
|
lucide-react/dist/esm/icons/chevron-down.js:
|
|
7312
7593
|
lucide-react/dist/esm/icons/chevron-left.js:
|
|
7313
7594
|
lucide-react/dist/esm/icons/chevron-right.js:
|
|
7595
|
+
lucide-react/dist/esm/icons/circle-alert.js:
|
|
7596
|
+
lucide-react/dist/esm/icons/circle-check-big.js:
|
|
7314
7597
|
lucide-react/dist/esm/icons/circle-check.js:
|
|
7315
7598
|
lucide-react/dist/esm/icons/circle-plus.js:
|
|
7316
7599
|
lucide-react/dist/esm/icons/clipboard-check.js:
|
|
@@ -7337,6 +7620,8 @@ lucide-react/dist/esm/icons/shield.js:
|
|
|
7337
7620
|
lucide-react/dist/esm/icons/sparkles.js:
|
|
7338
7621
|
lucide-react/dist/esm/icons/target.js:
|
|
7339
7622
|
lucide-react/dist/esm/icons/triangle-alert.js:
|
|
7623
|
+
lucide-react/dist/esm/icons/user-minus.js:
|
|
7624
|
+
lucide-react/dist/esm/icons/user-plus.js:
|
|
7340
7625
|
lucide-react/dist/esm/icons/user.js:
|
|
7341
7626
|
lucide-react/dist/esm/icons/users.js:
|
|
7342
7627
|
lucide-react/dist/esm/icons/workflow.js:
|