@tomaspavlin/rohlik-mcp 1.0.6 → 2.0.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.
Files changed (58) hide show
  1. package/README.md +55 -9
  2. package/dist/index.js +41 -201
  3. package/dist/index.js.map +1 -1
  4. package/dist/rohlik-api.d.ts +9 -1
  5. package/dist/rohlik-api.d.ts.map +1 -1
  6. package/dist/rohlik-api.js +147 -1
  7. package/dist/rohlik-api.js.map +1 -1
  8. package/dist/tools/account-data.d.ts +23 -0
  9. package/dist/tools/account-data.d.ts.map +1 -0
  10. package/dist/tools/account-data.js +83 -0
  11. package/dist/tools/account-data.js.map +1 -0
  12. package/dist/tools/announcements.d.ts +23 -0
  13. package/dist/tools/announcements.d.ts.map +1 -0
  14. package/dist/tools/announcements.js +61 -0
  15. package/dist/tools/announcements.js.map +1 -0
  16. package/dist/tools/cart-management.d.ts +88 -0
  17. package/dist/tools/cart-management.d.ts.map +1 -0
  18. package/dist/tools/cart-management.js +136 -0
  19. package/dist/tools/cart-management.js.map +1 -0
  20. package/dist/tools/delivery-info.d.ts +23 -0
  21. package/dist/tools/delivery-info.d.ts.map +1 -0
  22. package/dist/tools/delivery-info.js +69 -0
  23. package/dist/tools/delivery-info.js.map +1 -0
  24. package/dist/tools/delivery-slots.d.ts +23 -0
  25. package/dist/tools/delivery-slots.d.ts.map +1 -0
  26. package/dist/tools/delivery-slots.js +55 -0
  27. package/dist/tools/delivery-slots.js.map +1 -0
  28. package/dist/tools/index.d.ts +137 -0
  29. package/dist/tools/index.d.ts.map +1 -0
  30. package/dist/tools/index.js +19 -0
  31. package/dist/tools/index.js.map +1 -0
  32. package/dist/tools/order-history.d.ts +28 -0
  33. package/dist/tools/order-history.d.ts.map +1 -0
  34. package/dist/tools/order-history.js +62 -0
  35. package/dist/tools/order-history.js.map +1 -0
  36. package/dist/tools/premium-info.d.ts +23 -0
  37. package/dist/tools/premium-info.d.ts.map +1 -0
  38. package/dist/tools/premium-info.js +84 -0
  39. package/dist/tools/premium-info.js.map +1 -0
  40. package/dist/tools/reusable-bags.d.ts +23 -0
  41. package/dist/tools/reusable-bags.d.ts.map +1 -0
  42. package/dist/tools/reusable-bags.js +79 -0
  43. package/dist/tools/reusable-bags.js.map +1 -0
  44. package/dist/tools/search-products.d.ts +32 -0
  45. package/dist/tools/search-products.d.ts.map +1 -0
  46. package/dist/tools/search-products.js +44 -0
  47. package/dist/tools/search-products.js.map +1 -0
  48. package/dist/tools/shopping-lists.d.ts +28 -0
  49. package/dist/tools/shopping-lists.d.ts.map +1 -0
  50. package/dist/tools/shopping-lists.js +54 -0
  51. package/dist/tools/shopping-lists.js.map +1 -0
  52. package/dist/tools/upcoming-orders.d.ts +23 -0
  53. package/dist/tools/upcoming-orders.d.ts.map +1 -0
  54. package/dist/tools/upcoming-orders.js +61 -0
  55. package/dist/tools/upcoming-orders.js.map +1 -0
  56. package/dist/types.d.ts +14 -0
  57. package/dist/types.d.ts.map +1 -1
  58. package/package.json +2 -2
package/README.md CHANGED
@@ -1,19 +1,38 @@
1
1
  # Rohlik MCP Server
2
2
 
3
- A Model Context Protocol (MCP) server that enables AI assistants to interact with Rohlik.cz, the Czech Republic's leading online grocery delivery service. This server provides tools for searching products, managing shopping carts, and accessing shopping lists.
3
+ **Enhance your favourite LLM with capabilities to buy groceries.**
4
+
5
+ This is a Model Context Protocol (MCP) server that enables AI assistants to interact with the Rohlik Group's online grocery delivery services across multiple countries. This server provides tools for searching products, managing shopping carts, and accessing account info.
6
+
7
+ **Supported Services:**
8
+ - 🇨🇿 **[Rohlik.cz](https://www.rohlik.cz)** - Czech Republic
9
+ - 🇩🇪 **[Knuspr.de](https://www.knuspr.de)** - Germany
10
+ - 🇦🇹 **[Gurkerl.at](https://www.gurkerl.at)** - Austria
11
+ - 🇭🇺 **[Kifli.hu](https://www.kifli.hu)** - Hungary
12
+ - 🇷🇴 **[Sezamo.ro](https://www.sezamo.ro)** - Romania
13
+ - 🇮🇹 **[Sezamo.it](https://www.sezamo.it)** - Italy (planned)
14
+ - 🇪🇸 **[Sezamo.es](https://www.sezamo.es)** - Spain (planned)
15
+
16
+ Example LLM prompts that work very well with the Rohlik MCP:
17
+ - *Add ingredients for apple pie to the cart. Only gluten-free and budget-friendly.*
18
+ - *Or actually, instead of apple pie I want to make pumpkin pie. Change the ingredients.*
19
+ - *What are the items in my cart?*
20
+ - *Add the items in the attached shopping list photo to the cart.*
21
+ - *Add the bread I marked as favorite in Rohlik to my cart.*
22
+ - *What are the cheapest delivery slots for tomorrow?*
4
23
 
5
24
  > [!WARNING]
6
- > This MCP server is made by reverse engineering Rohlik.cz API that is used by the rohlik.cz website. Use this at your own risk.
25
+ > This MCP server is made by reverse engineering the APIs used by Rohlik Group's websites. Use at your own discretion.
7
26
 
8
27
  ## Usage
9
28
 
10
29
  ### Claude Desktop Configuration
11
30
 
12
- On MacOS: `~/Library/Application Support/Claude/claude_desktop_config.json`
31
+ Add the MCP to Claude Desktop configuration:
32
+ - On MacOS: `~/Library/Application Support/Claude/claude_desktop_config.json`
33
+ - On Windows: `%APPDATA%/Claude/claude_desktop_config.json`
13
34
 
14
- On Windows: `%APPDATA%/Claude/claude_desktop_config.json`
15
-
16
- Add this to your Claude Desktop configuration:
35
+ Add the following configuration:
17
36
 
18
37
  ```json
19
38
  {
@@ -23,21 +42,47 @@ Add this to your Claude Desktop configuration:
23
42
  "args": ["-y", "@tomaspavlin/rohlik-mcp"],
24
43
  "env": {
25
44
  "ROHLIK_USERNAME": "your-email@example.com",
26
- "ROHLIK_PASSWORD": "your-password"
45
+ "ROHLIK_PASSWORD": "your-password",
46
+ "ROHLIK_BASE_URL": "https://www.rohlik.cz"
27
47
  }
28
48
  }
29
49
  }
30
50
  }
31
51
  ```
32
52
 
53
+ ### Supported Regions
54
+
55
+ The server supports multiple Rohlik regions by setting the `ROHLIK_BASE_URL` environment variable:
56
+
57
+ * **Czech Republic**: `https://www.rohlik.cz` (default)
58
+ * **Germany**: `https://www.knuspr.de`
59
+ * **Austria**: `https://www.gurkerl.at`
60
+ * **Hungary**: `https://www.kifli.hu`
61
+ * **Romania**: `https://www.sezamo.ro`
62
+ * **Italy** (planned): `https://www.sezamo.it`
63
+ * **Spain** (planned): `https://www.sezamo.es`
64
+
65
+ If `ROHLIK_BASE_URL` is not specified, it defaults to the Czech version.
66
+
33
67
  ## Tools
34
68
 
69
+ ### Core Shopping
35
70
  - `search_products` - Search for grocery products by name with filtering options
36
71
  - `add_to_cart` - Add multiple products to your shopping cart
37
72
  - `get_cart_content` - View current cart contents and totals
38
73
  - `remove_from_cart` - Remove items from your shopping cart
39
74
  - `get_shopping_list` - Retrieve shopping lists by ID
40
75
 
76
+ ### Getting info
77
+ - `get_account_data` - Get comprehensive account information including delivery details, orders, announcements, cart, and premium status
78
+ - `get_order_history` - View your past delivered orders with details
79
+ - `get_upcoming_orders` - See your scheduled upcoming orders
80
+ - `get_delivery_info` - Get current delivery information and fees
81
+ - `get_delivery_slots` - View available delivery time slots for your address
82
+ - `get_premium_info` - Check your Rohlik Premium subscription status and benefits
83
+ - `get_announcements` - View current announcements and notifications
84
+ - `get_reusable_bags_info` - Track your reusable bags and environmental impact
85
+
41
86
  ## Development
42
87
 
43
88
  ### Installation
@@ -68,7 +113,8 @@ Add this to configuration:
68
113
  "args": ["/path/to/rohlik-mcp/dist/index.js"],
69
114
  "env": {
70
115
  "ROHLIK_USERNAME": "your-email@example.com",
71
- "ROHLIK_PASSWORD": "your-password"
116
+ "ROHLIK_PASSWORD": "your-password",
117
+ "ROHLIK_BASE_URL": "https://www.rohlik.cz"
72
118
  }
73
119
  }
74
120
  }
@@ -88,7 +134,7 @@ In the Inspector, set the ROHLIK_USERNAME and ROHLIK_PASSWORD envs.
88
134
  ### Publishing as NPM package
89
135
 
90
136
  1. Update version in package.json
91
- 2. `npm version patch && npm publish`
137
+ 2. `npm publish`
92
138
 
93
139
  ## License
94
140
 
package/dist/index.js CHANGED
@@ -1,11 +1,21 @@
1
1
  #!/usr/bin/env node
2
2
  import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";
3
3
  import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
4
- import { z } from "zod";
5
4
  import { RohlikAPI } from "./rohlik-api.js";
5
+ import { createSearchProductsTool } from "./tools/search-products.js";
6
+ import { createCartManagementTools } from "./tools/cart-management.js";
7
+ import { createShoppingListsTool } from "./tools/shopping-lists.js";
8
+ import { createAccountDataTool } from "./tools/account-data.js";
9
+ import { createOrderHistoryTool } from "./tools/order-history.js";
10
+ import { createDeliveryInfoTool } from "./tools/delivery-info.js";
11
+ import { createUpcomingOrdersTool } from "./tools/upcoming-orders.js";
12
+ import { createPremiumInfoTool } from "./tools/premium-info.js";
13
+ import { createDeliverySlotsTool } from "./tools/delivery-slots.js";
14
+ import { createAnnouncementsTool } from "./tools/announcements.js";
15
+ import { createReusableBagsTool } from "./tools/reusable-bags.js";
6
16
  const server = new McpServer({
7
17
  name: "rohlik-mcp",
8
- version: "0.0.1",
18
+ version: "1.0.0",
9
19
  }, {
10
20
  capabilities: {
11
21
  tools: {},
@@ -23,205 +33,35 @@ function createRohlikAPI() {
23
33
  const credentials = getCredentials();
24
34
  return new RohlikAPI(credentials);
25
35
  }
26
- server.registerTool("search_products", {
27
- title: "Search Products",
28
- description: "Search for products on Rohlik.cz by name",
29
- inputSchema: {
30
- product_name: z.string().min(1, "Product name cannot be empty").describe("The name or search term for the product"),
31
- limit: z.number().min(1).max(50).default(10).describe("Maximum number of products to return (1-50, default: 10)"),
32
- favourite_only: z.boolean().default(false).describe("Whether to return only favourite products (default: false)")
33
- }
34
- }, async ({ product_name, limit = 10, favourite_only = false }) => {
35
- try {
36
- const api = createRohlikAPI();
37
- const results = await api.searchProducts(product_name, limit, favourite_only);
38
- const output = `Found ${results.length} products:\n\n` +
39
- results.map(product => `• ${product.name} (${product.brand})\n Price: ${product.price}\n Amount: ${product.amount}\n ID: ${product.id}`).join('\n\n');
40
- return {
41
- content: [
42
- {
43
- type: "text",
44
- text: output
45
- }
46
- ]
47
- };
48
- }
49
- catch (error) {
50
- return {
51
- content: [
52
- {
53
- type: "text",
54
- text: error instanceof Error ? error.message : String(error)
55
- }
56
- ],
57
- isError: true
58
- };
59
- }
60
- });
61
- server.registerTool("add_to_cart", {
62
- title: "Add to Cart",
63
- description: "Add products to the shopping cart",
64
- inputSchema: {
65
- products: z.array(z.object({
66
- product_id: z.number().describe("The ID of the product to add"),
67
- quantity: z.number().min(1).describe("Quantity of the product to add")
68
- })).min(1, "At least one product is required").describe("Array of products to add to cart")
69
- }
70
- }, async ({ products }) => {
71
- try {
72
- const api = createRohlikAPI();
73
- const addedProducts = await api.addToCart(products);
74
- const successCount = addedProducts.length;
75
- const totalRequested = products.length;
76
- const output = `Successfully added ${successCount}/${totalRequested} products to cart.\n` +
77
- (addedProducts.length > 0 ? `Added product IDs: ${addedProducts.join(', ')}` : 'No products were added.');
78
- return {
79
- content: [
80
- {
81
- type: "text",
82
- text: output
83
- }
84
- ]
85
- };
86
- }
87
- catch (error) {
88
- return {
89
- content: [
90
- {
91
- type: "text",
92
- text: error instanceof Error ? error.message : String(error)
93
- }
94
- ],
95
- isError: true
96
- };
97
- }
98
- });
99
- server.registerTool("get_cart_content", {
100
- title: "Get Cart Content",
101
- description: "Get the current contents of the shopping cart",
102
- inputSchema: {}
103
- }, async () => {
104
- try {
105
- const api = createRohlikAPI();
106
- const cartContent = await api.getCartContent();
107
- if (cartContent.total_items === 0) {
108
- return {
109
- content: [
110
- {
111
- type: "text",
112
- text: "Your cart is empty."
113
- }
114
- ]
115
- };
116
- }
117
- const output = `Cart Summary:
118
- • Total items: ${cartContent.total_items}
119
- • Total price: ${cartContent.total_price} CZK
120
- • Can order: ${cartContent.can_make_order ? 'Yes' : 'No'}
121
-
122
- Products in cart:
123
- ${cartContent.products.map(product => `• ${product.name} (${product.brand})\n Quantity: ${product.quantity}\n Price: ${product.price} CZK\n Category: ${product.category_name}\n Cart ID: ${product.cart_item_id}`).join('\n\n')}`;
124
- return {
125
- content: [
126
- {
127
- type: "text",
128
- text: output
129
- }
130
- ]
131
- };
132
- }
133
- catch (error) {
134
- return {
135
- content: [
136
- {
137
- type: "text",
138
- text: error instanceof Error ? error.message : String(error)
139
- }
140
- ],
141
- isError: true
142
- };
143
- }
144
- });
145
- server.registerTool("remove_from_cart", {
146
- title: "Remove from Cart",
147
- description: "Remove an item from the shopping cart",
148
- inputSchema: {
149
- order_field_id: z.string().min(1, "Order field ID is required").describe("The order field ID of the item to remove (cart_item_id from cart content)")
150
- }
151
- }, async ({ order_field_id }) => {
152
- try {
153
- const api = createRohlikAPI();
154
- const success = await api.removeFromCart(order_field_id);
155
- const output = success
156
- ? `Successfully removed item with ID ${order_field_id} from cart.`
157
- : `Failed to remove item with ID ${order_field_id} from cart.`;
158
- return {
159
- content: [
160
- {
161
- type: "text",
162
- text: output
163
- }
164
- ]
165
- };
166
- }
167
- catch (error) {
168
- return {
169
- content: [
170
- {
171
- type: "text",
172
- text: error instanceof Error ? error.message : String(error)
173
- }
174
- ],
175
- isError: true
176
- };
177
- }
178
- });
179
- server.registerTool("get_shopping_list", {
180
- title: "Get Shopping List",
181
- description: "Get a shopping list by ID",
182
- inputSchema: {
183
- shopping_list_id: z.string().min(1, "Shopping list ID is required").describe("The ID of the shopping list to retrieve")
184
- }
185
- }, async ({ shopping_list_id }) => {
186
- try {
187
- const api = createRohlikAPI();
188
- const shoppingList = await api.getShoppingList(shopping_list_id);
189
- if (!shoppingList.products || shoppingList.products.length === 0) {
190
- return {
191
- content: [
192
- {
193
- type: "text",
194
- text: `Shopping list "${shoppingList.name}" is empty.`
195
- }
196
- ]
197
- };
198
- }
199
- const output = `Shopping List: ${shoppingList.name}
200
- Total products: ${shoppingList.products.length}
201
-
202
- Products:
203
- ${shoppingList.products.map((product, index) => `${index + 1}. ${product.name || 'Unknown product'}`).join('\n')}`;
204
- return {
205
- content: [
206
- {
207
- type: "text",
208
- text: output
209
- }
210
- ]
211
- };
212
- }
213
- catch (error) {
214
- return {
215
- content: [
216
- {
217
- type: "text",
218
- text: error instanceof Error ? error.message : String(error)
219
- }
220
- ],
221
- isError: true
222
- };
223
- }
224
- });
36
+ // Register all tools
37
+ const searchProducts = createSearchProductsTool(createRohlikAPI);
38
+ const cartTools = createCartManagementTools(createRohlikAPI);
39
+ const shoppingLists = createShoppingListsTool(createRohlikAPI);
40
+ const accountData = createAccountDataTool(createRohlikAPI);
41
+ const orderHistory = createOrderHistoryTool(createRohlikAPI);
42
+ const deliveryInfo = createDeliveryInfoTool(createRohlikAPI);
43
+ const upcomingOrders = createUpcomingOrdersTool(createRohlikAPI);
44
+ const premiumInfo = createPremiumInfoTool(createRohlikAPI);
45
+ const deliverySlots = createDeliverySlotsTool(createRohlikAPI);
46
+ const announcements = createAnnouncementsTool(createRohlikAPI);
47
+ const reusableBags = createReusableBagsTool(createRohlikAPI);
48
+ // Core functionality
49
+ server.registerTool(searchProducts.name, searchProducts.definition, searchProducts.handler);
50
+ server.registerTool(cartTools.addToCart.name, cartTools.addToCart.definition, cartTools.addToCart.handler);
51
+ server.registerTool(cartTools.getCartContent.name, cartTools.getCartContent.definition, cartTools.getCartContent.handler);
52
+ server.registerTool(cartTools.removeFromCart.name, cartTools.removeFromCart.definition, cartTools.removeFromCart.handler);
53
+ server.registerTool(shoppingLists.name, shoppingLists.definition, shoppingLists.handler);
54
+ server.registerTool(accountData.name, accountData.definition, accountData.handler);
55
+ // Order management
56
+ server.registerTool(orderHistory.name, orderHistory.definition, orderHistory.handler);
57
+ server.registerTool(upcomingOrders.name, upcomingOrders.definition, upcomingOrders.handler);
58
+ // Delivery management
59
+ server.registerTool(deliveryInfo.name, deliveryInfo.definition, deliveryInfo.handler);
60
+ server.registerTool(deliverySlots.name, deliverySlots.definition, deliverySlots.handler);
61
+ // Account features
62
+ server.registerTool(premiumInfo.name, premiumInfo.definition, premiumInfo.handler);
63
+ server.registerTool(announcements.name, announcements.definition, announcements.handler);
64
+ server.registerTool(reusableBags.name, reusableBags.definition, reusableBags.handler);
225
65
  async function main() {
226
66
  const transport = new StdioServerTransport();
227
67
  await server.connect(transport);
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { Product, SearchResult, CartContent, RohlikCredentials } from './types.js';
1
+ import { Product, SearchResult, CartContent, RohlikCredentials, AccountData } from './types.js';
2
2
  export declare class RohlikAPIError extends Error {
3
3
  status?: number | undefined;
4
4
  constructor(message: string, status?: number | undefined);
@@ -20,5 +20,13 @@ export declare class RohlikAPI {
20
20
  name: string;
21
21
  products: any[];
22
22
  }>;
23
+ getAccountData(): Promise<AccountData>;
24
+ getOrderHistory(limit?: number): Promise<any>;
25
+ getDeliveryInfo(): Promise<any>;
26
+ getUpcomingOrders(): Promise<any>;
27
+ getPremiumInfo(): Promise<any>;
28
+ getDeliverySlots(): Promise<any>;
29
+ getAnnouncements(): Promise<any>;
30
+ getReusableBagsInfo(): Promise<any>;
23
31
  }
24
32
  //# sourceMappingURL=rohlik-api.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"rohlik-api.d.ts","sourceRoot":"","sources":["../src/rohlik-api.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,iBAAiB,EAAqB,MAAM,YAAY,CAAC;AAItG,qBAAa,cAAe,SAAQ,KAAK;IACH,MAAM,CAAC,EAAE,MAAM;gBAAvC,OAAO,EAAE,MAAM,EAAS,MAAM,CAAC,EAAE,MAAM,YAAA;CAIpD;AAED,qBAAa,SAAS;IACpB,OAAO,CAAC,WAAW,CAAoB;IACvC,OAAO,CAAC,MAAM,CAAC,CAAS;IACxB,OAAO,CAAC,SAAS,CAAC,CAAS;IAC3B,OAAO,CAAC,cAAc,CAAc;gBAExB,WAAW,EAAE,iBAAiB;YAI5B,WAAW;IA6BnB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAuBtB,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IAOvB,cAAc,CAClB,WAAW,EAAE,MAAM,EACnB,KAAK,GAAE,MAAW,EAClB,aAAa,GAAE,OAAe,GAC7B,OAAO,CAAC,YAAY,EAAE,CAAC;IA0CpB,SAAS,CAAC,QAAQ,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAiCjD,cAAc,IAAI,OAAO,CAAC,WAAW,CAAC;IA0BtC,cAAc,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAgBtD,eAAe,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,GAAG,EAAE,CAAA;KAAE,CAAC;CAe1F"}
1
+ {"version":3,"file":"rohlik-api.d.ts","sourceRoot":"","sources":["../src/rohlik-api.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,iBAAiB,EAAqB,WAAW,EAAE,MAAM,YAAY,CAAC;AAInH,qBAAa,cAAe,SAAQ,KAAK;IACH,MAAM,CAAC,EAAE,MAAM;gBAAvC,OAAO,EAAE,MAAM,EAAS,MAAM,CAAC,EAAE,MAAM,YAAA;CAIpD;AAED,qBAAa,SAAS;IACpB,OAAO,CAAC,WAAW,CAAoB;IACvC,OAAO,CAAC,MAAM,CAAC,CAAS;IACxB,OAAO,CAAC,SAAS,CAAC,CAAS;IAC3B,OAAO,CAAC,cAAc,CAAc;gBAExB,WAAW,EAAE,iBAAiB;YAI5B,WAAW;IA6BnB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAuBtB,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IAOvB,cAAc,CAClB,WAAW,EAAE,MAAM,EACnB,KAAK,GAAE,MAAW,EAClB,aAAa,GAAE,OAAe,GAC7B,OAAO,CAAC,YAAY,EAAE,CAAC;IA0CpB,SAAS,CAAC,QAAQ,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAiCjD,cAAc,IAAI,OAAO,CAAC,WAAW,CAAC;IA0BtC,cAAc,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAgBtD,eAAe,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,GAAG,EAAE,CAAA;KAAE,CAAC;IAgBnF,cAAc,IAAI,OAAO,CAAC,WAAW,CAAC;IA0EtC,eAAe,CAAC,KAAK,GAAE,MAAW,GAAG,OAAO,CAAC,GAAG,CAAC;IAWjD,eAAe,IAAI,OAAO,CAAC,GAAG,CAAC;IAW/B,iBAAiB,IAAI,OAAO,CAAC,GAAG,CAAC;IAWjC,cAAc,IAAI,OAAO,CAAC,GAAG,CAAC;IAW9B,gBAAgB,IAAI,OAAO,CAAC,GAAG,CAAC;IAehC,gBAAgB,IAAI,OAAO,CAAC,GAAG,CAAC;IAWhC,mBAAmB,IAAI,OAAO,CAAC,GAAG,CAAC;CAU1C"}
@@ -1,5 +1,5 @@
1
1
  import fetch from 'node-fetch';
2
- const BASE_URL = 'https://www.rohlik.cz';
2
+ const BASE_URL = process.env.ROHLIK_BASE_URL || 'https://www.rohlik.cz';
3
3
  export class RohlikAPIError extends Error {
4
4
  status;
5
5
  constructor(message, status) {
@@ -179,5 +179,151 @@ export class RohlikAPI {
179
179
  await this.logout();
180
180
  }
181
181
  }
182
+ async getAccountData() {
183
+ await this.login();
184
+ try {
185
+ const result = {};
186
+ // Define endpoints similar to the Python implementation
187
+ const endpoints = {
188
+ delivery: '/services/frontend-service/first-delivery?reasonableDeliveryTime=true',
189
+ next_order: '/api/v3/orders/upcoming',
190
+ announcements: '/services/frontend-service/announcements/top',
191
+ bags: '/api/v1/reusable-bags/user-info',
192
+ timeslot: '/services/frontend-service/v1/timeslot-reservation',
193
+ last_order: '/api/v3/orders/delivered?offset=0&limit=1',
194
+ premium_profile: '/services/frontend-service/premium/profile',
195
+ delivery_announcements: '/services/frontend-service/announcements/delivery',
196
+ delivered_orders: '/api/v3/orders/delivered?offset=0&limit=50'
197
+ };
198
+ // Fetch data from all endpoints
199
+ for (const [endpoint, path] of Object.entries(endpoints)) {
200
+ try {
201
+ const response = await this.makeRequest(path);
202
+ result[endpoint] = response.data || response;
203
+ }
204
+ catch (error) {
205
+ console.error(`Error fetching ${endpoint}:`, error);
206
+ result[endpoint] = null;
207
+ }
208
+ }
209
+ // Handle next delivery slot endpoint (requires userId and addressId)
210
+ if (this.userId && this.addressId) {
211
+ try {
212
+ const nextDeliveryPath = `/services/frontend-service/timeslots-api/0?userId=${this.userId}&addressId=${this.addressId}&reasonableDeliveryTime=true`;
213
+ const response = await this.makeRequest(nextDeliveryPath);
214
+ result.next_delivery_slot = response.data || response;
215
+ }
216
+ catch (error) {
217
+ console.error('Error fetching next_delivery_slot:', error);
218
+ result.next_delivery_slot = null;
219
+ }
220
+ }
221
+ else {
222
+ result.next_delivery_slot = null;
223
+ }
224
+ // Get cart content (call internal method to avoid double login)
225
+ try {
226
+ const response = await this.makeRequest('/services/frontend-service/v2/cart');
227
+ const data = response.data || {};
228
+ result.cart = {
229
+ total_price: data.totalPrice || 0,
230
+ total_items: Object.keys(data.items || {}).length,
231
+ can_make_order: data.submitConditionPassed || false,
232
+ products: Object.entries(data.items || {}).map(([productId, productData]) => ({
233
+ id: productId,
234
+ cart_item_id: productData.orderFieldId || '',
235
+ name: productData.productName || '',
236
+ quantity: productData.quantity || 0,
237
+ price: productData.price || 0,
238
+ category_name: productData.primaryCategoryName || '',
239
+ brand: productData.brand || ''
240
+ }))
241
+ };
242
+ }
243
+ catch (error) {
244
+ console.error('Error fetching cart:', error);
245
+ result.cart = undefined;
246
+ }
247
+ return result;
248
+ }
249
+ finally {
250
+ await this.logout();
251
+ }
252
+ }
253
+ async getOrderHistory(limit = 50) {
254
+ await this.login();
255
+ try {
256
+ const response = await this.makeRequest(`/api/v3/orders/delivered?offset=0&limit=${limit}`);
257
+ return response.data || response;
258
+ }
259
+ finally {
260
+ await this.logout();
261
+ }
262
+ }
263
+ async getDeliveryInfo() {
264
+ await this.login();
265
+ try {
266
+ const response = await this.makeRequest('/services/frontend-service/first-delivery?reasonableDeliveryTime=true');
267
+ return response.data || response;
268
+ }
269
+ finally {
270
+ await this.logout();
271
+ }
272
+ }
273
+ async getUpcomingOrders() {
274
+ await this.login();
275
+ try {
276
+ const response = await this.makeRequest('/api/v3/orders/upcoming');
277
+ return response.data || response;
278
+ }
279
+ finally {
280
+ await this.logout();
281
+ }
282
+ }
283
+ async getPremiumInfo() {
284
+ await this.login();
285
+ try {
286
+ const response = await this.makeRequest('/services/frontend-service/premium/profile');
287
+ return response.data || response;
288
+ }
289
+ finally {
290
+ await this.logout();
291
+ }
292
+ }
293
+ async getDeliverySlots() {
294
+ await this.login();
295
+ try {
296
+ if (this.userId && this.addressId) {
297
+ const response = await this.makeRequest(`/services/frontend-service/timeslots-api/0?userId=${this.userId}&addressId=${this.addressId}&reasonableDeliveryTime=true`);
298
+ return response.data || response;
299
+ }
300
+ else {
301
+ throw new RohlikAPIError('User ID or Address ID not available');
302
+ }
303
+ }
304
+ finally {
305
+ await this.logout();
306
+ }
307
+ }
308
+ async getAnnouncements() {
309
+ await this.login();
310
+ try {
311
+ const response = await this.makeRequest('/services/frontend-service/announcements/top');
312
+ return response.data || response;
313
+ }
314
+ finally {
315
+ await this.logout();
316
+ }
317
+ }
318
+ async getReusableBagsInfo() {
319
+ await this.login();
320
+ try {
321
+ const response = await this.makeRequest('/api/v1/reusable-bags/user-info');
322
+ return response.data || response;
323
+ }
324
+ finally {
325
+ await this.logout();
326
+ }
327
+ }
182
328
  }
183
329
  //# sourceMappingURL=rohlik-api.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"rohlik-api.js","sourceRoot":"","sources":["../src/rohlik-api.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"rohlik-api.js","sourceRoot":"","sources":["../src/rohlik-api.ts"],"names":[],"mappings":"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"}