@simonarcher/fika-types 2.0.0-rc.1 → 2.0.0-rc.2

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/shop.d.ts CHANGED
@@ -341,6 +341,15 @@ export interface SpecialtyConfig {
341
341
  translationKey?: string;
342
342
  priority: 'high' | 'medium' | 'low';
343
343
  }
344
+ export type FeatureGroupKey = 'Space & Seating' | 'Work & Facilities' | 'Food & Drink' | 'Service' | 'Payment';
345
+ /** Maps each feature key to its display group. */
346
+ export declare const featureGroupMap: Record<ShopFeatureKey, FeatureGroupKey>;
347
+ /** Display labels for each feature key. */
348
+ export declare const featureLabelMap: Record<ShopFeatureKey, string>;
349
+ /** Maps each specialty key to its category (matches the groupings on `ShopSpecialtyKey`). */
350
+ export declare const specialtyCategoryMap: Record<ShopSpecialtyKey, SpecialtyCategoryKey>;
351
+ /** Display labels for each specialty key. */
352
+ export declare const specialtyLabelMap: Record<ShopSpecialtyKey, string>;
344
353
  interface OpeningTime {
345
354
  day: number;
346
355
  hour: number | null;
package/dist/shop.js CHANGED
@@ -1,2 +1,161 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.specialtyLabelMap = exports.specialtyCategoryMap = exports.featureLabelMap = exports.featureGroupMap = void 0;
4
+ /** Maps each feature key to its display group. */
5
+ exports.featureGroupMap = {
6
+ // Space & Seating
7
+ indoorSeating: 'Space & Seating',
8
+ outdoorSeating: 'Space & Seating',
9
+ petFriendly: 'Space & Seating',
10
+ // Work & Facilities
11
+ wifi: 'Work & Facilities',
12
+ powerOutlets: 'Work & Facilities',
13
+ laptopFriendly: 'Work & Facilities',
14
+ restrooms: 'Work & Facilities',
15
+ parking: 'Work & Facilities',
16
+ accessibility: 'Work & Facilities',
17
+ // Food & Drink
18
+ breakfast: 'Food & Drink',
19
+ lunch: 'Food & Drink',
20
+ vegetarian: 'Food & Drink',
21
+ glutenFree: 'Food & Drink',
22
+ alcohol: 'Food & Drink',
23
+ // Service
24
+ takeaway: 'Service',
25
+ delivery: 'Service',
26
+ loyaltyCard: 'Service',
27
+ discountOnReusableCup: 'Service',
28
+ // Payment
29
+ acceptsCash: 'Payment',
30
+ acceptsCreditCards: 'Payment',
31
+ acceptsNfc: 'Payment',
32
+ };
33
+ /** Display labels for each feature key. */
34
+ exports.featureLabelMap = {
35
+ // Space & Seating
36
+ indoorSeating: 'Indoor Seating',
37
+ outdoorSeating: 'Outdoor Seating',
38
+ petFriendly: 'Pet Friendly',
39
+ // Work & Facilities
40
+ wifi: 'Free WiFi',
41
+ powerOutlets: 'Power Outlets',
42
+ laptopFriendly: 'Laptop Friendly',
43
+ restrooms: 'Restrooms',
44
+ parking: 'Parking',
45
+ accessibility: 'Wheelchair Accessible',
46
+ // Food & Drink
47
+ breakfast: 'Serves Breakfast',
48
+ lunch: 'Serves Lunch',
49
+ vegetarian: 'Vegetarian Options',
50
+ glutenFree: 'Gluten-Free Options',
51
+ alcohol: 'Serves Alcohol',
52
+ // Service
53
+ takeaway: 'Takeaway',
54
+ delivery: 'Delivery',
55
+ loyaltyCard: 'Loyalty Card',
56
+ discountOnReusableCup: 'Discount for Reusable Cup',
57
+ // Payment
58
+ acceptsCash: 'Cash Payments',
59
+ acceptsCreditCards: 'Card Payments',
60
+ acceptsNfc: 'Contactless / NFC',
61
+ };
62
+ /** Maps each specialty key to its category (matches the groupings on `ShopSpecialtyKey`). */
63
+ exports.specialtyCategoryMap = {
64
+ // Coffee Excellence
65
+ pourOverSpecialty: 'Coffee Excellence',
66
+ espressoExpert: 'Coffee Excellence',
67
+ singleOriginFocus: 'Coffee Excellence',
68
+ localRoaster: 'Coffee Excellence',
69
+ brewingEducation: 'Coffee Excellence',
70
+ cuppingEvents: 'Coffee Excellence',
71
+ matchaSpecialty: 'Coffee Excellence',
72
+ decafSpecialty: 'Coffee Excellence',
73
+ inHouseRoastery: 'Coffee Excellence',
74
+ // Atmosphere
75
+ relaxingVibes: 'Atmosphere',
76
+ bustlingEnergy: 'Atmosphere',
77
+ quietStudySpace: 'Atmosphere',
78
+ uniqueExperience: 'Atmosphere',
79
+ instagramWorthy: 'Atmosphere',
80
+ cozyAmbiance: 'Atmosphere',
81
+ // Food & Treats
82
+ freshPastries: 'Food & Treats',
83
+ homemadeTreats: 'Food & Treats',
84
+ artisanBread: 'Food & Treats',
85
+ localBakery: 'Food & Treats',
86
+ healthyOptions: 'Food & Treats',
87
+ dessertDestination: 'Food & Treats',
88
+ inHouseBakery: 'Food & Treats',
89
+ signatureBakedGoods: 'Food & Treats',
90
+ // Community & Values
91
+ lgbtqFriendly: 'Community & Values',
92
+ womenOwned: 'Community & Values',
93
+ familyOwned: 'Community & Values',
94
+ communityHub: 'Community & Values',
95
+ sociallyConscious: 'Community & Values',
96
+ localArtSupport: 'Community & Values',
97
+ // Entertainment
98
+ liveMusic: 'Entertainment',
99
+ localArt: 'Entertainment',
100
+ bookExchange: 'Entertainment',
101
+ boardGames: 'Entertainment',
102
+ culturalEvents: 'Entertainment',
103
+ workshopSpace: 'Entertainment',
104
+ // Work & Study
105
+ laptopFriendlyPro: 'Work & Study',
106
+ meetingSpaceAvailable: 'Work & Study',
107
+ quietZones: 'Work & Study',
108
+ fastWifi: 'Work & Study',
109
+ longStayWelcome: 'Work & Study',
110
+ coworkingVibes: 'Work & Study',
111
+ };
112
+ /** Display labels for each specialty key. */
113
+ exports.specialtyLabelMap = {
114
+ // Coffee Excellence
115
+ pourOverSpecialty: 'Pour-Over / Filter Focus',
116
+ espressoExpert: 'Espresso Specialists',
117
+ singleOriginFocus: 'Single Origin Focus',
118
+ localRoaster: 'Local Roaster',
119
+ brewingEducation: 'Brewing Education',
120
+ cuppingEvents: 'Cupping Events',
121
+ matchaSpecialty: 'Matcha Specialty',
122
+ decafSpecialty: 'Decaf Specialty',
123
+ inHouseRoastery: 'In-House Roastery',
124
+ // Atmosphere
125
+ relaxingVibes: 'Relaxing Vibes',
126
+ bustlingEnergy: 'Lively Atmosphere',
127
+ quietStudySpace: 'Quiet Study Space',
128
+ uniqueExperience: 'Unique Concept',
129
+ instagramWorthy: 'Instagram-Worthy',
130
+ cozyAmbiance: 'Cosy & Welcoming',
131
+ // Food & Treats
132
+ freshPastries: 'Fresh Pastries',
133
+ homemadeTreats: 'Homemade Treats',
134
+ artisanBread: 'Artisan Bread',
135
+ localBakery: 'Local Bakery Partner',
136
+ healthyOptions: 'Healthy Options',
137
+ dessertDestination: 'Dessert Destination',
138
+ inHouseBakery: 'In-House Bakery',
139
+ signatureBakedGoods: 'Signature Baked Goods',
140
+ // Community & Values
141
+ lgbtqFriendly: 'LGBTQ+ Friendly',
142
+ womenOwned: 'Women Owned & Led',
143
+ familyOwned: 'Family Owned',
144
+ communityHub: 'Community Hub',
145
+ sociallyConscious: 'Socially Conscious',
146
+ localArtSupport: 'Local Art Support',
147
+ // Entertainment
148
+ liveMusic: 'Live Music',
149
+ localArt: 'Local Art',
150
+ bookExchange: 'Book Exchange',
151
+ boardGames: 'Board Games',
152
+ culturalEvents: 'Cultural Events',
153
+ workshopSpace: 'Workshop Space',
154
+ // Work & Study
155
+ laptopFriendlyPro: 'Laptop Friendly',
156
+ meetingSpaceAvailable: 'Meeting Space Available',
157
+ quietZones: 'Quiet Zones',
158
+ fastWifi: 'Fast WiFi',
159
+ longStayWelcome: 'Long Stays Welcome',
160
+ coworkingVibes: 'Coworking Vibes',
161
+ };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@simonarcher/fika-types",
3
- "version": "2.0.0-rc.1",
3
+ "version": "2.0.0-rc.2",
4
4
  "description": "Shared TypeScript types for Fika projects",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",