food402 1.0.3 → 1.1.0

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.
@@ -47,7 +47,6 @@ export interface RestaurantsResponse {
47
47
  pageSize: number;
48
48
  hasNextPage: boolean;
49
49
  }
50
- export declare function getAddresses(): Promise<AddressesResponse>;
51
50
  export interface MenuItem {
52
51
  id: number;
53
52
  name: string;
@@ -75,8 +74,6 @@ export interface RestaurantMenuResponse {
75
74
  categories: MenuCategory[];
76
75
  totalItems: number;
77
76
  }
78
- export declare function getRestaurants(latitude: string, longitude: string, page?: number): Promise<RestaurantsResponse>;
79
- export declare function getRestaurantMenu(restaurantId: number, latitude: string, longitude: string): Promise<RestaurantMenuResponse>;
80
77
  export interface RecommendedItem {
81
78
  id: number;
82
79
  name: string;
@@ -92,7 +89,6 @@ export interface ProductRecommendationsResponse {
92
89
  collections: RecommendationCollection[];
93
90
  totalItems: number;
94
91
  }
95
- export declare function getProductRecommendations(restaurantId: number, productIds: number[]): Promise<ProductRecommendationsResponse>;
96
92
  export interface ProductOption {
97
93
  id: number;
98
94
  name: string;
@@ -121,7 +117,6 @@ export interface ProductDetailsResponse {
121
117
  maxQuantity: number;
122
118
  components: ProductComponent[];
123
119
  }
124
- export declare function getProductDetails(restaurantId: number, productId: number, latitude: string, longitude: string): Promise<ProductDetailsResponse>;
125
120
  export interface IngredientExclusion {
126
121
  id: number;
127
122
  }
@@ -186,8 +181,6 @@ export interface SetShippingAddressRequest {
186
181
  shippingAddressId: number;
187
182
  invoiceAddressId: number;
188
183
  }
189
- export declare function setShippingAddress(request: SetShippingAddressRequest): Promise<void>;
190
- export declare function addToBasket(request: AddToBasketRequest): Promise<AddToBasketResponse>;
191
184
  export interface CartProductDetails extends CartProduct {
192
185
  marketPrice: number;
193
186
  modifierProducts: Array<{
@@ -215,9 +208,6 @@ export interface GetBasketResponse {
215
208
  deliveryPrice: number;
216
209
  isEmpty: boolean;
217
210
  }
218
- export declare function getBasket(): Promise<GetBasketResponse>;
219
- export declare function removeFromBasket(itemId: string): Promise<GetBasketResponse>;
220
- export declare function clearBasket(): Promise<void>;
221
211
  export interface SearchProduct {
222
212
  id: number;
223
213
  name: string;
@@ -264,9 +254,6 @@ export interface NeighborhoodsResponse {
264
254
  count: number;
265
255
  districtId: number;
266
256
  }
267
- export declare function getCities(): Promise<CitiesResponse>;
268
- export declare function getDistricts(cityId: number): Promise<DistrictsResponse>;
269
- export declare function getNeighborhoods(districtId: number): Promise<NeighborhoodsResponse>;
270
257
  export interface AddAddressRequest {
271
258
  name: string;
272
259
  surname: string;
@@ -291,7 +278,6 @@ export interface AddAddressResponse {
291
278
  requiresOtp?: boolean;
292
279
  message: string;
293
280
  }
294
- export declare function addAddress(request: AddAddressRequest): Promise<AddAddressResponse>;
295
281
  export interface SavedCard {
296
282
  cardId: number;
297
283
  name: string;
@@ -330,10 +316,6 @@ export interface CustomerNoteRequest {
330
316
  contactlessDelivery: boolean;
331
317
  dontRingBell: boolean;
332
318
  }
333
- export declare function updateCustomerNote(request: CustomerNoteRequest): Promise<void>;
334
- export declare function getSavedCards(): Promise<SavedCardsResponse>;
335
- export declare function getCheckoutReady(): Promise<CheckoutReadyResponse>;
336
- export declare function placeOrder(cardId: number): Promise<PlaceOrderResponse>;
337
319
  export interface OrderStatus {
338
320
  status: string;
339
321
  statusText: string;
@@ -412,6 +394,3 @@ export interface OrderDetail {
412
394
  phoneNumber: string;
413
395
  };
414
396
  }
415
- export declare function getOrders(page?: number): Promise<OrdersResponse>;
416
- export declare function getOrderDetail(orderId: string): Promise<OrderDetail>;
417
- export declare function searchRestaurants(searchQuery: string, latitude: string, longitude: string, page?: number): Promise<SearchRestaurantsResponse>;
@@ -0,0 +1,2 @@
1
+ // shared/types.ts - Common TypeScript interfaces for TGO Yemek API
2
+ export {};
@@ -0,0 +1,23 @@
1
+ import * as sharedApi from "../shared/api.js";
2
+ export type { Address, AddressesResponse, Restaurant, RestaurantsResponse, MenuItem, MenuCategory, RestaurantInfo, RestaurantMenuResponse, RecommendedItem, RecommendationCollection, ProductRecommendationsResponse, ProductOption, ProductComponent, ProductDetailsResponse, IngredientExclusion, ModifierProduct, BasketItem, AddToBasketRequest, CartProduct, CartStore, CartSummaryLine, AddToBasketResponse, SetShippingAddressRequest, CartProductDetails, CartStoreGroup, GetBasketResponse, SearchProduct, SearchRestaurant, SearchRestaurantsResponse, City, District, Neighborhood, CitiesResponse, DistrictsResponse, NeighborhoodsResponse, AddAddressRequest, AddAddressResponse, SavedCard, SavedCardsResponse, CheckoutReadyResponse, PlaceOrderResponse, CustomerNoteRequest, OrderStatus, OrderStore, OrderPrice, OrderProductSummary, Order, OrdersResponse, OrderDetailProduct, OrderStatusStep, OrderShipmentItem, OrderDetail, } from "../shared/types.js";
3
+ export declare function getAddresses(): Promise<sharedApi.AddressesResponse>;
4
+ export declare function getRestaurants(latitude: string, longitude: string, page?: number): Promise<sharedApi.RestaurantsResponse>;
5
+ export declare function getRestaurantMenu(restaurantId: number, latitude: string, longitude: string): Promise<sharedApi.RestaurantMenuResponse>;
6
+ export declare function getProductRecommendations(restaurantId: number, productIds: number[]): Promise<sharedApi.ProductRecommendationsResponse>;
7
+ export declare function getProductDetails(restaurantId: number, productId: number, latitude: string, longitude: string): Promise<sharedApi.ProductDetailsResponse>;
8
+ export declare function setShippingAddress(request: sharedApi.SetShippingAddressRequest): Promise<void>;
9
+ export declare function addToBasket(request: sharedApi.AddToBasketRequest): Promise<sharedApi.AddToBasketResponse>;
10
+ export declare function getBasket(): Promise<sharedApi.GetBasketResponse>;
11
+ export declare function removeFromBasket(itemId: string): Promise<sharedApi.GetBasketResponse>;
12
+ export declare function clearBasket(): Promise<void>;
13
+ export declare function getCities(): Promise<sharedApi.CitiesResponse>;
14
+ export declare function getDistricts(cityId: number): Promise<sharedApi.DistrictsResponse>;
15
+ export declare function getNeighborhoods(districtId: number): Promise<sharedApi.NeighborhoodsResponse>;
16
+ export declare function addAddress(request: sharedApi.AddAddressRequest): Promise<sharedApi.AddAddressResponse>;
17
+ export declare function updateCustomerNote(request: sharedApi.CustomerNoteRequest): Promise<void>;
18
+ export declare function getSavedCards(): Promise<sharedApi.SavedCardsResponse>;
19
+ export declare function getCheckoutReady(): Promise<sharedApi.CheckoutReadyResponse>;
20
+ export declare function placeOrder(cardId: number): Promise<sharedApi.PlaceOrderResponse>;
21
+ export declare function getOrders(page?: number): Promise<sharedApi.OrdersResponse>;
22
+ export declare function getOrderDetail(orderId: string): Promise<sharedApi.OrderDetail>;
23
+ export declare function searchRestaurants(searchQuery: string, latitude: string, longitude: string, page?: number): Promise<sharedApi.SearchRestaurantsResponse>;
@@ -0,0 +1,88 @@
1
+ // src/api.ts - TGO Yemek API Functions (Local wrapper using getToken)
2
+ import { getToken } from "./auth.js";
3
+ import * as sharedApi from "../shared/api.js";
4
+ // Wrapper functions that automatically inject the token
5
+ export async function getAddresses() {
6
+ const token = await getToken();
7
+ return sharedApi.getAddresses(token);
8
+ }
9
+ export async function getRestaurants(latitude, longitude, page = 1) {
10
+ const token = await getToken();
11
+ return sharedApi.getRestaurants(token, latitude, longitude, page);
12
+ }
13
+ export async function getRestaurantMenu(restaurantId, latitude, longitude) {
14
+ const token = await getToken();
15
+ return sharedApi.getRestaurantMenu(token, restaurantId, latitude, longitude);
16
+ }
17
+ export async function getProductRecommendations(restaurantId, productIds) {
18
+ const token = await getToken();
19
+ return sharedApi.getProductRecommendations(token, restaurantId, productIds);
20
+ }
21
+ export async function getProductDetails(restaurantId, productId, latitude, longitude) {
22
+ const token = await getToken();
23
+ return sharedApi.getProductDetails(token, restaurantId, productId, latitude, longitude);
24
+ }
25
+ export async function setShippingAddress(request) {
26
+ const token = await getToken();
27
+ return sharedApi.setShippingAddress(token, request);
28
+ }
29
+ export async function addToBasket(request) {
30
+ const token = await getToken();
31
+ return sharedApi.addToBasket(token, request);
32
+ }
33
+ export async function getBasket() {
34
+ const token = await getToken();
35
+ return sharedApi.getBasket(token);
36
+ }
37
+ export async function removeFromBasket(itemId) {
38
+ const token = await getToken();
39
+ return sharedApi.removeFromBasket(token, itemId);
40
+ }
41
+ export async function clearBasket() {
42
+ const token = await getToken();
43
+ return sharedApi.clearBasket(token);
44
+ }
45
+ export async function getCities() {
46
+ const token = await getToken();
47
+ return sharedApi.getCities(token);
48
+ }
49
+ export async function getDistricts(cityId) {
50
+ const token = await getToken();
51
+ return sharedApi.getDistricts(token, cityId);
52
+ }
53
+ export async function getNeighborhoods(districtId) {
54
+ const token = await getToken();
55
+ return sharedApi.getNeighborhoods(token, districtId);
56
+ }
57
+ export async function addAddress(request) {
58
+ const token = await getToken();
59
+ return sharedApi.addAddress(token, request);
60
+ }
61
+ export async function updateCustomerNote(request) {
62
+ const token = await getToken();
63
+ return sharedApi.updateCustomerNote(token, request);
64
+ }
65
+ export async function getSavedCards() {
66
+ const token = await getToken();
67
+ return sharedApi.getSavedCards(token);
68
+ }
69
+ export async function getCheckoutReady() {
70
+ const token = await getToken();
71
+ return sharedApi.getCheckoutReady(token);
72
+ }
73
+ export async function placeOrder(cardId) {
74
+ const token = await getToken();
75
+ return sharedApi.placeOrder(token, cardId);
76
+ }
77
+ export async function getOrders(page = 1) {
78
+ const token = await getToken();
79
+ return sharedApi.getOrders(token, page);
80
+ }
81
+ export async function getOrderDetail(orderId) {
82
+ const token = await getToken();
83
+ return sharedApi.getOrderDetail(token, orderId);
84
+ }
85
+ export async function searchRestaurants(searchQuery, latitude, longitude, page = 1) {
86
+ const token = await getToken();
87
+ return sharedApi.searchRestaurants(token, searchQuery, latitude, longitude, page);
88
+ }
File without changes
@@ -6,7 +6,7 @@ const projectRoot = process.env.INIT_CWD || process.cwd();
6
6
  const mcpJsonPath = join(projectRoot, '.mcp.json');
7
7
  const food402Config = {
8
8
  command: "node",
9
- args: ["./node_modules/food402/dist/index.js"],
9
+ args: ["./node_modules/food402/dist/src/index.js"],
10
10
  env: {
11
11
  TGO_EMAIL: "your-email@example.com",
12
12
  TGO_PASSWORD: "your-password"
package/package.json CHANGED
@@ -1,10 +1,10 @@
1
1
  {
2
2
  "name": "food402",
3
- "version": "1.0.3",
3
+ "version": "1.1.0",
4
4
  "description": "MCP server for ordering food from TGO Yemek",
5
5
  "type": "module",
6
6
  "bin": {
7
- "food402": "./dist/index.js"
7
+ "food402": "./dist/src/index.js"
8
8
  },
9
9
  "files": [
10
10
  "dist"
@@ -12,7 +12,7 @@
12
12
  "scripts": {
13
13
  "start": "tsx src/index.ts",
14
14
  "build": "tsc",
15
- "postinstall": "node dist/postinstall.js",
15
+ "postinstall": "node dist/src/postinstall.js",
16
16
  "prepublishOnly": "npm run build"
17
17
  },
18
18
  "keywords": [
File without changes
File without changes
File without changes
File without changes