@simonarcher/fika-types 1.0.83 → 1.0.85

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/coffee.d.ts CHANGED
@@ -1,6 +1,6 @@
1
1
  import type { GeoPoint, Timestamp } from "firebase-admin/firestore";
2
- /** How established a roaster is within specialty (used by shop scoring). */
3
- export type RoasterTier = 1 | 2 | 3;
2
+ /** How "established" a roaster is within specialty (used by shop scoring). */
3
+ export type RoasterTier = 1 | 2 | 3 | 4;
4
4
  export interface RoasterSpecialtyMeta {
5
5
  tier?: RoasterTier;
6
6
  verified?: boolean;
package/dist/shop.d.ts CHANGED
@@ -198,6 +198,7 @@ export type ShopData = {
198
198
  roasterRefs?: RoasterRef[];
199
199
  roasterRefsIds?: string[];
200
200
  houseRoasted?: boolean;
201
+ whiteLabelBeans?: boolean;
201
202
  brewMethods?: string[];
202
203
  menuKeywords?: string[];
203
204
  hasBrewBar?: boolean;
@@ -207,6 +208,7 @@ export type ShopData = {
207
208
  events?: string[];
208
209
  sustainability?: Array<'direct trade' | 'traceable' | 'organic' | 'b-corp' | string>;
209
210
  baristaAchievements?: BaristaAchievement[];
211
+ awards?: ShopAward[];
210
212
  signals?: SpecialtySignals;
211
213
  specialty?: SpecialtyMeta;
212
214
  onboarding?: {
@@ -459,6 +461,7 @@ export interface PublicShopData extends Omit<ShopData, 'analytics' | 'googleRati
459
461
  fans: string[];
460
462
  total: number;
461
463
  };
464
+ awards?: ShopAward[];
462
465
  }
463
466
  export type SpecialtyOverride = {
464
467
  score: number;
@@ -486,7 +489,7 @@ export type SpecialtySignals = {
486
489
  export type RoasterRef = {
487
490
  id: string;
488
491
  displayName?: string;
489
- tierHint?: 1 | 2 | 3;
492
+ tierHint?: 1 | 2 | 3 | 4;
490
493
  /**
491
494
  * Whether this roaster's beans are used in the grinder/coffee menu
492
495
  * @default true (for backward compatibility with existing associations)
@@ -497,6 +500,11 @@ export type RoasterRef = {
497
500
  * @default false (for backward compatibility with existing associations)
498
501
  */
499
502
  availableForPurchase?: boolean;
503
+ /**
504
+ * Whether this roaster is a white label supplier (provides branded beans to the shop)
505
+ * @default false (for backward compatibility with existing associations)
506
+ */
507
+ isWhiteLabelSupplier?: boolean;
500
508
  };
501
509
  export type CommunitySignal = 'cupping' | 'training' | 'education' | 'origin talk' | 'sustainability' | 'direct trade' | 'traceable';
502
510
  export type BaristaAchievement = {
@@ -504,6 +512,20 @@ export type BaristaAchievement = {
504
512
  year?: number;
505
513
  notes?: string;
506
514
  };
515
+ export type ShopAwardType = 'shop' | 'barista';
516
+ export type AwardCategory = 'Competition Win' | 'Certification' | 'Shop Award' | 'Recognition' | 'Other';
517
+ export interface ShopAward {
518
+ id: string;
519
+ type: ShopAwardType;
520
+ awardType: AwardCategory;
521
+ title: string;
522
+ year?: number;
523
+ notes?: string;
524
+ imageUrl?: string;
525
+ issuedBy?: string;
526
+ createdAt?: number;
527
+ updatedAt?: number;
528
+ }
507
529
  /**
508
530
  * Denormalized version used when displaying or exporting reviews.
509
531
  * Mirrors PostShopReviewData but includes IDs, timestamps, and optional ISO string.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@simonarcher/fika-types",
3
- "version": "1.0.83",
3
+ "version": "1.0.85",
4
4
  "description": "Shared TypeScript types for Fika projects",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",