chofex-cli 0.1.184 → 0.1.186

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/README.md CHANGED
@@ -46,9 +46,11 @@ actual. Usa `CHOFEX_AUTO_UPDATE=0` para desactivar esta comprobación.
46
46
  optional phone number, bio, portfolio URL, shipped project, LinkedIn and GitHub
47
47
  URLs, and Terms and Conditions. Use `--input` to submit a completed JSON
48
48
  application.
49
- After attendance confirmation, `chofex badge regenerate` updates the public
50
- badge name, one-line description, picture, and QR destination without changing
51
- the submitted application.
49
+ Acceptance creates a default badge from the profile visible to reviewers.
50
+ `chofex confirm` updates its public name, one-line description, and picture
51
+ while collecting the venue details required for attendance. After confirmation,
52
+ `chofex badge regenerate` can also update those public fields and the QR
53
+ destination without changing the submitted application.
52
54
  The technical challenges do not block submission, but every challenge winner must submit
53
55
  an application before being accepted. Top results receive a direct pass; other
54
56
  scores give organizers another review metric.
package/dist/index.js CHANGED
@@ -59045,7 +59045,9 @@ var ApplicationPartId = exports_Schema.Literals([
59045
59045
  ]);
59046
59046
  var acceptedDetailsInputFields = {
59047
59047
  fullName: nonBlank(200),
59048
- phone,
59048
+ displayName: exports_Schema.optional(nonBlank(200)),
59049
+ oneLiner: exports_Schema.optional(nonBlank(30)),
59050
+ phone: exports_Schema.optional(phone),
59049
59051
  dateOfBirth: exports_Schema.String.pipe(exports_Schema.check(exports_Schema.isPattern(/^\d{4}-\d{2}-\d{2}$/, {
59050
59052
  message: "Must use YYYY-MM-DD format"
59051
59053
  }))),
@@ -61341,8 +61343,10 @@ var interactiveAcceptedDetails = (participationMode, pictures) => exports_Effect
61341
61343
  if (!fullName) {
61342
61344
  fullName = yield* exports_Prompt.run(requiredText("Full name exactly as it appears on your ID document", acceptedDetailsInputFields.fullName));
61343
61345
  }
61346
+ const displayName = yield* exports_Prompt.run(requiredText("Nombre impreso en tu carnet", acceptedDetailsInputFields.fullName, pictures.currentDisplayName ?? fullName));
61347
+ const oneLiner = yield* exports_Prompt.run(requiredText("Presentación de una línea para tu carnet", badgeRegenerationInputFields.oneLiner, pictures.currentOneLiner));
61344
61348
  const details = yield* exports_Prompt.run(exports_Prompt.all({
61345
- phone: requiredText("Phone number", acceptedDetailsInputFields.phone, pictures.currentPhone),
61349
+ phone: optionalText2("Teléfono para WhatsApp (opcional)", acceptedDetailsInputFields.phone, pictures.currentPhone),
61346
61350
  dateOfBirth: dateOfBirthPrompt(),
61347
61351
  nationalIdNumber: requiredText("National ID or passport number", acceptedDetailsInputFields.nationalIdNumber),
61348
61352
  shirtSize: shirtSizePrompt(participationMode),
@@ -61375,7 +61379,13 @@ var interactiveAcceptedDetails = (participationMode, pictures) => exports_Effect
61375
61379
  message: "Confirm the profile picture reviewers should use",
61376
61380
  choices: pictureChoices
61377
61381
  }));
61378
- return withoutEmptyStrings({ fullName, ...details, pictureSource });
61382
+ return withoutEmptyStrings({
61383
+ fullName,
61384
+ displayName,
61385
+ oneLiner,
61386
+ ...details,
61387
+ pictureSource
61388
+ });
61379
61389
  });
61380
61390
  var inputOrInteractive = (path4, interactive) => {
61381
61391
  if (path4)
@@ -63479,11 +63489,14 @@ var confirmCommand = exports_Command.make("confirm", {
63479
63489
  return yield* exports_Effect.fail(cliError("INVALID_APPLICATION_STATE", "Acceptance details can only be submitted after acceptance"));
63480
63490
  }
63481
63491
  const currentUser = yield* getCurrentUser(client);
63492
+ const currentBadge = yield* getBadge(client);
63482
63493
  const body = yield* acceptedDetailsInput(exports_Option.getOrUndefined(input), current.data.registration.participationMode, {
63483
63494
  clerkPictureUrl: currentUser.data.clerkPictureUrl,
63484
63495
  githubUrl: current.data.registration.githubUrl,
63485
63496
  currentPhone: current.data.registration.phone,
63486
- currentFullName: joinFullName(current.data.registration.firstName, current.data.registration.lastName) || current.data.registration.fullName
63497
+ currentDisplayName: currentBadge.data.profile?.fullName,
63498
+ currentOneLiner: currentBadge.data.profile?.oneLiner ?? current.data.registration.role,
63499
+ currentFullName: current.data.registration.fullName || joinFullName(current.data.registration.firstName, current.data.registration.lastName)
63487
63500
  });
63488
63501
  const picturePath = exports_Option.getOrUndefined(picture);
63489
63502
  if (body.pictureSource === "upload") {
@@ -63620,6 +63633,8 @@ var applicationTemplate = {
63620
63633
  };
63621
63634
  var acceptanceTemplate = {
63622
63635
  fullName: "Ada Lovelace",
63636
+ displayName: "Ada L.",
63637
+ oneLiner: "Computing pioneer",
63623
63638
  phone: "+44 20 0000 0000",
63624
63639
  dateOfBirth: "1990-01-01",
63625
63640
  nationalIdNumber: "passport-or-national-id",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "chofex-cli",
3
- "version": "0.1.184",
3
+ "version": "0.1.186",
4
4
  "description": "Command-line client for Hack the Andes",
5
5
  "type": "module",
6
6
  "bin": {