@dgpholdings/greatoak-shared 1.2.96 → 1.2.98

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.
@@ -70,6 +70,9 @@ export type TGoalDisplay = {
70
70
  taglineEn: string;
71
71
  /** Emoji representing the goal — universal, not translated */
72
72
  emoji: string;
73
+ /** Card background */
74
+ bannerUrlMale: string | undefined;
75
+ bannerUrlFeMale: string | undefined;
73
76
  /**
74
77
  * Goal category — used to group goals on the selection screen.
75
78
  * Category label itself is also translated via categoryKey.
@@ -280,6 +280,8 @@ exports.GOAL_DISPLAY = {
280
280
  taglineEn: "Every session burns, every week counts.",
281
281
  emoji: "🔥",
282
282
  category: "appearance",
283
+ bannerUrlFeMale: "https://greyoak-eu-central-1.s3.eu-west-1.amazonaws.com/system_assets/templates/e72b57da-4f6d-48d2-928e-85e1ec985c9c.webp",
284
+ bannerUrlMale: "https://greyoak-eu-central-1.s3.eu-west-1.amazonaws.com/system_assets/templates/2c5a0423-c610-4ec1-b457-3b8030f366bc.webp",
283
285
  },
284
286
  build_muscle: {
285
287
  nameKey: "userGoal.buildMuscle.name",
@@ -290,6 +292,8 @@ exports.GOAL_DISPLAY = {
290
292
  taglineEn: "Progressive overload. Every rep builds the next.",
291
293
  emoji: "💪",
292
294
  category: "appearance",
295
+ bannerUrlFeMale: "https://greyoak-eu-central-1.s3.eu-west-1.amazonaws.com/system_assets/templates/f5721c32-03a6-445c-ae02-8c7651626723.webp",
296
+ bannerUrlMale: "https://greyoak-eu-central-1.s3.eu-west-1.amazonaws.com/system_assets/templates/c728aa20-ad17-423f-b121-78b2844fdb49.webp",
293
297
  },
294
298
  lean_and_toned: {
295
299
  nameKey: "userGoal.leanAndToned.name",
@@ -300,6 +304,8 @@ exports.GOAL_DISPLAY = {
300
304
  taglineEn: "Defined. Lean. Confident.",
301
305
  emoji: "✨",
302
306
  category: "appearance",
307
+ bannerUrlFeMale: "https://greyoak-eu-central-1.s3.eu-west-1.amazonaws.com/system_assets/templates/7c740603-33d7-4955-bb78-93e99e6c63fa.webp",
308
+ bannerUrlMale: "https://greyoak-eu-central-1.s3.eu-west-1.amazonaws.com/system_assets/templates/0c387504-3af9-4de4-b61d-131fa2466230.webp",
303
309
  },
304
310
  glutes_and_legs: {
305
311
  nameKey: "userGoal.glutesAndLegs.name",
@@ -310,6 +316,8 @@ exports.GOAL_DISPLAY = {
310
316
  taglineEn: "Strong legs carry everything.",
311
317
  emoji: "🦵",
312
318
  category: "appearance",
319
+ bannerUrlFeMale: "https://greyoak-eu-central-1.s3.eu-west-1.amazonaws.com/system_assets/templates/0d5b7ffa-f764-4555-85f5-1301995e61b1.webp",
320
+ bannerUrlMale: "https://greyoak-eu-central-1.s3.eu-west-1.amazonaws.com/system_assets/templates/bb0f2927-167b-47b0-8f92-22f7aba4fcd7.webp",
313
321
  },
314
322
  // ── Performance ───────────────────────────────────────────────────────────
315
323
  get_stronger: {
@@ -321,6 +329,8 @@ exports.GOAL_DISPLAY = {
321
329
  taglineEn: "Lift more. Be more.",
322
330
  emoji: "🏋️",
323
331
  category: "performance",
332
+ bannerUrlMale: "https://greyoak-eu-central-1.s3.eu-west-1.amazonaws.com/system_assets/templates/4cea7afd-2e17-4eef-963d-e2703750b9fc.webp",
333
+ bannerUrlFeMale: "https://greyoak-eu-central-1.s3.eu-west-1.amazonaws.com/system_assets/templates/683c215d-e597-4f61-9bea-62f9e192833d.webp",
324
334
  },
325
335
  boost_endurance: {
326
336
  nameKey: "userGoal.boostEndurance.name",
@@ -331,6 +341,8 @@ exports.GOAL_DISPLAY = {
331
341
  taglineEn: "Go further. Last longer.",
332
342
  emoji: "🏃",
333
343
  category: "performance",
344
+ bannerUrlFeMale: "https://greyoak-eu-central-1.s3.eu-west-1.amazonaws.com/system_assets/templates/0ddcbba2-dcdf-4e74-a350-1529e7040064.webp",
345
+ bannerUrlMale: "https://greyoak-eu-central-1.s3.eu-west-1.amazonaws.com/system_assets/templates/0ddcbba2-dcdf-4e74-a350-1529e7040064.webp",
334
346
  },
335
347
  athletic_performance: {
336
348
  nameKey: "userGoal.athleticPerformance.name",
@@ -341,6 +353,8 @@ exports.GOAL_DISPLAY = {
341
353
  taglineEn: "Train hard. Perform harder.",
342
354
  emoji: "⚡",
343
355
  category: "performance",
356
+ bannerUrlFeMale: "https://greyoak-eu-central-1.s3.eu-west-1.amazonaws.com/system_assets/templates/517f68e7-5efc-4ac7-b905-8f70e3f8e8a6.webp",
357
+ bannerUrlMale: "https://greyoak-eu-central-1.s3.eu-west-1.amazonaws.com/system_assets/templates/128059aa-7986-4553-8c95-0cd52d9544a2.webp",
344
358
  },
345
359
  // ── Health ────────────────────────────────────────────────────────────────
346
360
  general_fitness: {
@@ -352,6 +366,8 @@ exports.GOAL_DISPLAY = {
352
366
  taglineEn: "Move well. Feel well. Live well.",
353
367
  emoji: "🌟",
354
368
  category: "health",
369
+ bannerUrlFeMale: "https://greyoak-eu-central-1.s3.eu-west-1.amazonaws.com/system_assets/templates/25f28b4f-18da-44f9-a5bc-d8c5b1b68125.webp",
370
+ bannerUrlMale: "https://greyoak-eu-central-1.s3.eu-west-1.amazonaws.com/system_assets/templates/596cbfad-6fe4-465c-a4e8-7752b8908c2e.webp",
355
371
  },
356
372
  posture_and_back: {
357
373
  nameKey: "userGoal.postureAndBack.name",
@@ -362,6 +378,8 @@ exports.GOAL_DISPLAY = {
362
378
  taglineEn: "Stand tall. Move pain-free.",
363
379
  emoji: "🧍",
364
380
  category: "health",
381
+ bannerUrlMale: "https://greyoak-eu-central-1.s3.eu-west-1.amazonaws.com/system_assets/templates/4babd0e0-2c27-4de5-971e-df5ebe80be19.webp",
382
+ bannerUrlFeMale: "https://greyoak-eu-central-1.s3.eu-west-1.amazonaws.com/system_assets/templates/975f06dd-fd23-4ce2-acb0-cecdf7cc415c.webp",
365
383
  },
366
384
  stress_relief: {
367
385
  nameKey: "userGoal.stressRelief.name",
@@ -372,6 +390,8 @@ exports.GOAL_DISPLAY = {
372
390
  taglineEn: "Move it out. Breathe it out.",
373
391
  emoji: "🧘",
374
392
  category: "health",
393
+ bannerUrlFeMale: "https://greyoak-eu-central-1.s3.eu-west-1.amazonaws.com/system_assets/templates/99c96fb0-e3a0-4497-a018-6ae574bcc934.webp",
394
+ bannerUrlMale: "https://greyoak-eu-central-1.s3.eu-west-1.amazonaws.com/system_assets/templates/a3ba090d-6e67-42ce-828e-bc402451eb9f.webp",
375
395
  },
376
396
  rehabilitation: {
377
397
  nameKey: "userGoal.rehabilitation.name",
@@ -382,6 +402,8 @@ exports.GOAL_DISPLAY = {
382
402
  taglineEn: "Slow and steady. Built to last.",
383
403
  emoji: "🩹",
384
404
  category: "health",
405
+ bannerUrlFeMale: "https://greyoak-eu-central-1.s3.eu-west-1.amazonaws.com/system_assets/templates/c0e7d9b0-621a-4f2b-8903-b7284ff865aa.webp",
406
+ bannerUrlMale: "https://greyoak-eu-central-1.s3.eu-west-1.amazonaws.com/system_assets/templates/d869c028-fb3e-4108-9428-b6d8e7f196f7.webp",
385
407
  },
386
408
  // ── Focused ───────────────────────────────────────────────────────────────
387
409
  core_strength: {
@@ -393,6 +415,8 @@ exports.GOAL_DISPLAY = {
393
415
  taglineEn: "Strong core. Strong everything.",
394
416
  emoji: "🎯",
395
417
  category: "focused",
418
+ bannerUrlFeMale: "https://greyoak-eu-central-1.s3.eu-west-1.amazonaws.com/system_assets/templates/1e5471bc-4027-4d54-b556-dd8888a66e5e.webp",
419
+ bannerUrlMale: "https://greyoak-eu-central-1.s3.eu-west-1.amazonaws.com/system_assets/templates/bfe94c98-e0d6-4228-b63f-8eaedd64632f.webp",
396
420
  },
397
421
  mobility_flexibility: {
398
422
  nameKey: "userGoal.mobilityFlexibility.name",
@@ -403,6 +427,8 @@ exports.GOAL_DISPLAY = {
403
427
  taglineEn: "Move freely. Age well.",
404
428
  emoji: "🌀",
405
429
  category: "focused",
430
+ bannerUrlFeMale: "https://greyoak-eu-central-1.s3.eu-west-1.amazonaws.com/system_assets/templates/d15a75cf-758e-41ec-aa4f-87cc7286e6d6.webp",
431
+ bannerUrlMale: "https://greyoak-eu-central-1.s3.eu-west-1.amazonaws.com/system_assets/templates/7e43790e-d4b0-493a-8d99-25942b3390b8.webp",
406
432
  },
407
433
  };
408
434
  exports.GOAL_CATEGORY_DISPLAY = {
@@ -63,12 +63,16 @@ export type TApiAiQuickStartWorkoutReq = {
63
63
  * backend treats it as "no equipment filter" — i.e. all candidates eligible.
64
64
  */
65
65
  equipmentSelectionOverride: TQuickStartEquipmentSelection;
66
- goalContext?: {
66
+ /**
67
+ * Can can use this API even without goal (thats why it can be undefined)
68
+ * Otherwise goalContext is passed to AI prompt, for exercise record enrichment!
69
+ */
70
+ goalContext: {
67
71
  activeGoal: TUserFitnessGoal;
68
72
  currentPhase: TTrainingPhase;
69
73
  currentWeek: number;
70
74
  phaseName: string;
71
- };
75
+ } | undefined;
72
76
  };
73
77
  export type TQuickStartEquipmentSelection = {
74
78
  type: "preferences";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dgpholdings/greatoak-shared",
3
- "version": "1.2.96",
3
+ "version": "1.2.98",
4
4
  "description": "Shared TypeScript types and utilities for @dgpholdings projects",
5
5
  "main": "./dist/index.js",
6
6
  "types": "./dist/index.d.ts",