@simonarcher/fika-types 1.1.6 → 1.2.1
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 +12 -3
- package/dist/shop.js +129 -0
- package/package.json +1 -1
package/dist/shop.d.ts
CHANGED
|
@@ -313,9 +313,18 @@ export interface ShopContactDetails {
|
|
|
313
313
|
};
|
|
314
314
|
updatedAt?: Date;
|
|
315
315
|
}
|
|
316
|
-
export type ShopFeatureKey = 'powerOutlets' | 'laptopFriendly' | 'outdoorSeating' | 'indoorSeating' | 'accessibility' | 'alcohol' | 'breakfast' | 'lunch' | 'vegetarian' | 'petFriendly' | 'restrooms' | 'parking' | 'wifi' | 'acceptsCash' | 'acceptsCreditCards' | 'acceptsNfc' | 'discountOnReusableCup' | 'glutenFree' | 'loyaltyCard' | 'takeaway' | 'delivery' | 'inHouseRoasting' | 'walkInOnly';
|
|
317
|
-
export type
|
|
318
|
-
|
|
316
|
+
export type ShopFeatureKey = 'powerOutlets' | 'laptopFriendly' | 'outdoorSeating' | 'indoorSeating' | 'accessibility' | 'alcohol' | 'breakfast' | 'lunch' | 'vegetarian' | 'petFriendly' | 'kidFriendly' | 'restrooms' | 'parking' | 'wifi' | 'acceptsCash' | 'acceptsCreditCards' | 'acceptsNfc' | 'discountOnReusableCup' | 'glutenFree' | 'loyaltyCard' | 'takeaway' | 'delivery' | 'inHouseRoasting' | 'walkInOnly';
|
|
317
|
+
export type FeatureGroupKey = 'Space & Seating' | 'Work & Facilities' | 'Food & Drink' | 'Service' | 'Payment';
|
|
318
|
+
/** Maps each feature key to its display group. Single source of truth for admin and mobile. */
|
|
319
|
+
export declare const featureGroupMap: Record<ShopFeatureKey, FeatureGroupKey>;
|
|
320
|
+
/** Display labels for each feature key. Single source of truth for admin and mobile. */
|
|
321
|
+
export declare const featureLabelMap: Record<ShopFeatureKey, string>;
|
|
322
|
+
export type ShopSpecialtyKey = 'inHouseRoastery' | 'pourOverSpecialty' | 'espressoExpert' | 'singleOriginFocus' | 'rotatingRoasters' | 'tastingNotesOnMenu' | 'naturalFermentedFocus' | 'cuppingAndEducation' | 'cozyAmbiance' | 'bustlingEnergy' | 'espressoBarStanding' | 'vinylRecords' | 'uniqueExperience' | 'inHouseBakery' | 'freshPastries' | 'localBakeryPartner' | 'dessertDestination' | 'lgbtqFriendly' | 'womenOwned' | 'zeroWasteFocus' | 'communityHub' | 'laptopWelcome' | 'fastWifi' | 'longStayOk';
|
|
323
|
+
export type SpecialtyCategoryKey = 'Coffee' | 'Atmosphere' | 'Food & Treats' | 'Identity & Values' | 'Workspace';
|
|
324
|
+
/** Maps each specialty key to its category. Single source of truth for admin and mobile. */
|
|
325
|
+
export declare const specialtyCategoryMap: Record<ShopSpecialtyKey, SpecialtyCategoryKey>;
|
|
326
|
+
/** Display labels for each specialty key. Single source of truth for admin and mobile. */
|
|
327
|
+
export declare const specialtyLabelMap: Record<ShopSpecialtyKey, string>;
|
|
319
328
|
export interface ShopSpecialties {
|
|
320
329
|
highlighted: ShopSpecialtyKey[];
|
|
321
330
|
additional: ShopSpecialtyKey[];
|
package/dist/shop.js
CHANGED
|
@@ -1,2 +1,131 @@
|
|
|
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. Single source of truth for admin and mobile. */
|
|
5
|
+
exports.featureGroupMap = {
|
|
6
|
+
// Space & Seating
|
|
7
|
+
indoorSeating: 'Space & Seating',
|
|
8
|
+
outdoorSeating: 'Space & Seating',
|
|
9
|
+
petFriendly: 'Space & Seating',
|
|
10
|
+
kidFriendly: 'Space & Seating',
|
|
11
|
+
// Work & Facilities
|
|
12
|
+
wifi: 'Work & Facilities',
|
|
13
|
+
powerOutlets: 'Work & Facilities',
|
|
14
|
+
laptopFriendly: 'Work & Facilities',
|
|
15
|
+
restrooms: 'Work & Facilities',
|
|
16
|
+
parking: 'Work & Facilities',
|
|
17
|
+
accessibility: 'Work & Facilities',
|
|
18
|
+
// Food & Drink
|
|
19
|
+
breakfast: 'Food & Drink',
|
|
20
|
+
lunch: 'Food & Drink',
|
|
21
|
+
vegetarian: 'Food & Drink',
|
|
22
|
+
glutenFree: 'Food & Drink',
|
|
23
|
+
alcohol: 'Food & Drink',
|
|
24
|
+
// Service
|
|
25
|
+
takeaway: 'Service',
|
|
26
|
+
delivery: 'Service',
|
|
27
|
+
loyaltyCard: 'Service',
|
|
28
|
+
discountOnReusableCup: 'Service',
|
|
29
|
+
inHouseRoasting: 'Service',
|
|
30
|
+
walkInOnly: 'Service',
|
|
31
|
+
// Payment
|
|
32
|
+
acceptsCash: 'Payment',
|
|
33
|
+
acceptsCreditCards: 'Payment',
|
|
34
|
+
acceptsNfc: 'Payment',
|
|
35
|
+
};
|
|
36
|
+
/** Display labels for each feature key. Single source of truth for admin and mobile. */
|
|
37
|
+
exports.featureLabelMap = {
|
|
38
|
+
// Space & Seating
|
|
39
|
+
indoorSeating: 'Indoor Seating',
|
|
40
|
+
outdoorSeating: 'Outdoor Seating',
|
|
41
|
+
petFriendly: 'Pet Friendly',
|
|
42
|
+
kidFriendly: 'Kid Friendly',
|
|
43
|
+
// Work & Facilities
|
|
44
|
+
wifi: 'Free WiFi',
|
|
45
|
+
powerOutlets: 'Power Outlets',
|
|
46
|
+
laptopFriendly: 'Laptop Friendly',
|
|
47
|
+
restrooms: 'Restrooms',
|
|
48
|
+
parking: 'Parking',
|
|
49
|
+
accessibility: 'Wheelchair Accessible',
|
|
50
|
+
// Food & Drink
|
|
51
|
+
breakfast: 'Serves Breakfast',
|
|
52
|
+
lunch: 'Serves Lunch',
|
|
53
|
+
vegetarian: 'Vegetarian Options',
|
|
54
|
+
glutenFree: 'Gluten-Free Options',
|
|
55
|
+
alcohol: 'Serves Alcohol',
|
|
56
|
+
// Service
|
|
57
|
+
takeaway: 'Takeaway',
|
|
58
|
+
delivery: 'Delivery',
|
|
59
|
+
loyaltyCard: 'Loyalty Card',
|
|
60
|
+
discountOnReusableCup: 'Discount for Reusable Cup',
|
|
61
|
+
inHouseRoasting: 'In-House Roasting',
|
|
62
|
+
walkInOnly: 'Walk-In Only',
|
|
63
|
+
// Payment
|
|
64
|
+
acceptsCash: 'Cash Payments',
|
|
65
|
+
acceptsCreditCards: 'Card Payments',
|
|
66
|
+
acceptsNfc: 'Contactless / NFC',
|
|
67
|
+
};
|
|
68
|
+
/** Maps each specialty key to its category. Single source of truth for admin and mobile. */
|
|
69
|
+
exports.specialtyCategoryMap = {
|
|
70
|
+
// Coffee
|
|
71
|
+
inHouseRoastery: 'Coffee',
|
|
72
|
+
pourOverSpecialty: 'Coffee',
|
|
73
|
+
espressoExpert: 'Coffee',
|
|
74
|
+
singleOriginFocus: 'Coffee',
|
|
75
|
+
rotatingRoasters: 'Coffee',
|
|
76
|
+
tastingNotesOnMenu: 'Coffee',
|
|
77
|
+
naturalFermentedFocus: 'Coffee',
|
|
78
|
+
cuppingAndEducation: 'Coffee',
|
|
79
|
+
// Atmosphere
|
|
80
|
+
cozyAmbiance: 'Atmosphere',
|
|
81
|
+
bustlingEnergy: 'Atmosphere',
|
|
82
|
+
espressoBarStanding: 'Atmosphere',
|
|
83
|
+
vinylRecords: 'Atmosphere',
|
|
84
|
+
uniqueExperience: 'Atmosphere',
|
|
85
|
+
// Food & Treats
|
|
86
|
+
inHouseBakery: 'Food & Treats',
|
|
87
|
+
freshPastries: 'Food & Treats',
|
|
88
|
+
localBakeryPartner: 'Food & Treats',
|
|
89
|
+
dessertDestination: 'Food & Treats',
|
|
90
|
+
// Identity & Values
|
|
91
|
+
lgbtqFriendly: 'Identity & Values',
|
|
92
|
+
womenOwned: 'Identity & Values',
|
|
93
|
+
zeroWasteFocus: 'Identity & Values',
|
|
94
|
+
communityHub: 'Identity & Values',
|
|
95
|
+
// Workspace
|
|
96
|
+
laptopWelcome: 'Workspace',
|
|
97
|
+
fastWifi: 'Workspace',
|
|
98
|
+
longStayOk: 'Workspace',
|
|
99
|
+
};
|
|
100
|
+
/** Display labels for each specialty key. Single source of truth for admin and mobile. */
|
|
101
|
+
exports.specialtyLabelMap = {
|
|
102
|
+
// Coffee
|
|
103
|
+
inHouseRoastery: 'In-House Roastery',
|
|
104
|
+
pourOverSpecialty: 'Pour-Over / Filter Focus',
|
|
105
|
+
espressoExpert: 'Espresso Specialists',
|
|
106
|
+
singleOriginFocus: 'Single Origin Focus',
|
|
107
|
+
rotatingRoasters: 'Rotating / Guest Roasters',
|
|
108
|
+
tastingNotesOnMenu: 'Tasting Notes on Menu',
|
|
109
|
+
naturalFermentedFocus: 'Natural & Fermented Coffees',
|
|
110
|
+
cuppingAndEducation: 'Cuppings & Education',
|
|
111
|
+
// Atmosphere
|
|
112
|
+
cozyAmbiance: 'Cosy & Welcoming',
|
|
113
|
+
bustlingEnergy: 'Lively Atmosphere',
|
|
114
|
+
espressoBarStanding: 'Espresso Bar / Standing Only',
|
|
115
|
+
vinylRecords: 'Vinyl Records',
|
|
116
|
+
uniqueExperience: 'Unique Concept',
|
|
117
|
+
// Food & Treats
|
|
118
|
+
inHouseBakery: 'In-House Bakery',
|
|
119
|
+
freshPastries: 'Fresh Pastries',
|
|
120
|
+
localBakeryPartner: 'Local Bakery Partner',
|
|
121
|
+
dessertDestination: 'Dessert Destination',
|
|
122
|
+
// Identity & Values
|
|
123
|
+
lgbtqFriendly: 'LGBTQ+ Friendly',
|
|
124
|
+
womenOwned: 'Women Owned & Led',
|
|
125
|
+
zeroWasteFocus: 'Zero Waste Focused',
|
|
126
|
+
communityHub: 'Community Hub',
|
|
127
|
+
// Workspace
|
|
128
|
+
laptopWelcome: 'Laptop Welcome',
|
|
129
|
+
fastWifi: 'Fast WiFi',
|
|
130
|
+
longStayOk: 'Long Stay OK',
|
|
131
|
+
};
|