buymeua-api-fe 0.11.0 → 0.13.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.
package/CHANGELOG.md CHANGED
@@ -7,6 +7,34 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
7
7
 
8
8
  ## [Unreleased]
9
9
 
10
+ ## [0.13.0] - 2025-12-01
11
+
12
+ ### Added
13
+
14
+ - Add createOrder mutation for creating orders
15
+ - Add CreateOrderRequest/Response types with full order creation support
16
+
17
+ ### Changed
18
+
19
+ - Make request parameters optional (void) for queries without required params:
20
+ - getProducts, getProductsByQr, getBestSellers, getSupplierProducts
21
+ - Allows calling hooks without arguments: `useGetProductsInfiniteQuery()`
22
+
23
+ ## [0.12.0] - 2025-11-28
24
+
25
+ ### Added
26
+
27
+ - Add Order API endpoints:
28
+ - checkTelephone - Validate phone number (blacklist, duplicates)
29
+ - getDeliveryMethods - Get available delivery methods for merchant
30
+ - getPaymentMethods - Get available payment methods for merchant
31
+ - Add Order API types (CheckTelephoneRequest/Response, DeliveryMethod, PaymentMethod, GetDeliveryMethodsRequest/Response, GetPaymentMethodsRequest/Response)
32
+ - Export Order API from main package entry point
33
+ - Add Product filtering endpoints:
34
+ - getProductAttributes - Search product attributes with filtering
35
+ - getProductOptions - Search product options with filtering
36
+ - Add Product filtering types (GetProductAttributesRequest/Response, GetProductOptionsRequest/Response)
37
+
10
38
  ## [0.11.0] - 2025-11-27
11
39
 
12
40
  ### Changed
package/README.md CHANGED
@@ -158,6 +158,36 @@ const { data } = useGetBestSellersQuery({
158
158
  // Get product details
159
159
  const { data } = useGetProductDetailsQuery({ product: number });
160
160
 
161
+ // Get product attributes for filtering
162
+ const { data } = useGetProductAttributesQuery({
163
+ search?: string;
164
+ product_id?: number;
165
+ category_id?: number;
166
+ attribute_ids?: number[];
167
+ option_value_filter?: {
168
+ option_value_ids?: number[];
169
+ warehouse_ids?: number[];
170
+ };
171
+ attribute_filter?: {
172
+ attribute_ids?: number[];
173
+ attribute_values?: `${number}:${string}`[];
174
+ };
175
+ });
176
+
177
+ // Get product options for filtering
178
+ const { data } = useGetProductOptionsQuery({
179
+ search?: string;
180
+ product_id?: number;
181
+ category_id?: number;
182
+ option_id?: number;
183
+ option_value_ids?: number[];
184
+ warehouse_ids?: number[];
185
+ attribute_filter?: {
186
+ attribute_ids?: number[];
187
+ attribute_values?: `${number}:${string}`[];
188
+ };
189
+ });
190
+
161
191
  // Get supplier products with infinite scroll
162
192
  const { data, fetchNextPage, hasNextPage } = useGetSupplierProductsInfiniteQuery({
163
193
  core_filter?: string;
@@ -579,6 +609,55 @@ const { data, fetchNextPage, hasNextPage } = useGetNovaposhtaWarehousesInfiniteQ
579
609
  });
580
610
  ```
581
611
 
612
+ ### Orders
613
+
614
+ ```typescript
615
+ // Check telephone number (blacklist, duplicates)
616
+ const { data } = useCheckTelephoneQuery({
617
+ telephone: string;
618
+ });
619
+
620
+ // Get delivery methods for merchant
621
+ const { data } = useGetDeliveryMethodsQuery({
622
+ merchant_id: number;
623
+ });
624
+
625
+ // Get payment methods for merchant
626
+ const { data } = useGetPaymentMethodsQuery({
627
+ merchant_id: number;
628
+ custom_ttn?: string;
629
+ delivery_method_code?: string;
630
+ });
631
+
632
+ // Create order
633
+ const [createOrder] = useCreateOrderMutation();
634
+ await createOrder({
635
+ merchant_id: number;
636
+ payment_method_code: string;
637
+ delivery_method_code?: string;
638
+ custom_ttn?: string;
639
+ firstname?: string;
640
+ lastname?: string;
641
+ middlename?: string;
642
+ telephone?: string;
643
+ email?: string;
644
+ comment?: string;
645
+ city_ref?: string;
646
+ warehouse_ref?: string;
647
+ shipping_street_id?: number;
648
+ shipping_house?: string;
649
+ shipping_flat?: string;
650
+ country_id?: number;
651
+ city?: string;
652
+ address?: string;
653
+ total_pay?: number;
654
+ custom_customer_id?: number;
655
+ category_order_id?: number;
656
+ ad_platform_page_id?: number;
657
+ ad_new_client?: boolean;
658
+ });
659
+ ```
660
+
582
661
  ### Referrals
583
662
 
584
663
  ```typescript
@@ -1,6 +1,6 @@
1
1
  import type { AddFavoriteMerchantItemRequest, AddFavoriteMerchantItemResponse, GetFavoriteCountResponse, GetFavoriteMerchantItemsRequest, GetFavoriteMerchantItemsResponse, GetFavoriteMerchantsRequest, GetFavoriteMerchantsResponse } from '../model/types';
2
2
  export declare const favoriteApi: import("@reduxjs/toolkit/query").Api<import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@reduxjs/toolkit/query").FetchArgs, unknown, import("@reduxjs/toolkit/query").FetchBaseQueryError>, import("@reduxjs/toolkit/query").UpdateDefinitions<import("@reduxjs/toolkit/query").UpdateDefinitions<{
3
- getProducts: import("@reduxjs/toolkit/query").InfiniteQueryDefinition<Partial<{
3
+ getProducts: import("@reduxjs/toolkit/query").InfiniteQueryDefinition<void | Partial<{
4
4
  per_page: number;
5
5
  core_filter: string;
6
6
  filter_has_special: boolean | null;
@@ -23,13 +23,15 @@ export declare const favoriteApi: import("@reduxjs/toolkit/query").Api<import("@
23
23
  only_in_root_category: boolean;
24
24
  price_type: "price" | "price_drop";
25
25
  }>, number, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@reduxjs/toolkit/query").FetchArgs, unknown, import("@reduxjs/toolkit/query").FetchBaseQueryError>, never, import("../../product").GetProductsResponse, "buymeuaApi", unknown>;
26
- getProductsByQr: import("@reduxjs/toolkit/query").InfiniteQueryDefinition<import("../../product").GetProductsByQrRequest, number, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@reduxjs/toolkit/query").FetchArgs, unknown, import("@reduxjs/toolkit/query").FetchBaseQueryError>, never, import("../../product").GetProductsByQrResponse, "buymeuaApi", unknown>;
26
+ getProductsByQr: import("@reduxjs/toolkit/query").InfiniteQueryDefinition<void | import("../../product").GetProductsByQrRequest, number, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@reduxjs/toolkit/query").FetchArgs, unknown, import("@reduxjs/toolkit/query").FetchBaseQueryError>, never, import("../../product").GetProductsByQrResponse, "buymeuaApi", unknown>;
27
27
  getProductById: import("@reduxjs/toolkit/query").QueryDefinition<import("../../product").GetProductByIdRequest, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@reduxjs/toolkit/query").FetchArgs, unknown, import("@reduxjs/toolkit/query").FetchBaseQueryError>, never, import("../../product").GetProductByIdResponse, "buymeuaApi", unknown>;
28
28
  getProduct: import("@reduxjs/toolkit/query").QueryDefinition<import("../../product").GetProductRequest, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@reduxjs/toolkit/query").FetchArgs, unknown, import("@reduxjs/toolkit/query").FetchBaseQueryError>, never, import("../../product").GetProductResponse, "buymeuaApi", unknown>;
29
29
  getProductStatistics: import("@reduxjs/toolkit/query").QueryDefinition<import("../../product").GetProductStatisticsRequest, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@reduxjs/toolkit/query").FetchArgs, unknown, import("@reduxjs/toolkit/query").FetchBaseQueryError>, never, import("../../product").GetProductStatisticsResponse, "buymeuaApi", unknown>;
30
- getBestSellers: import("@reduxjs/toolkit/query").QueryDefinition<import("../../product").GetBestsellersRequest, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@reduxjs/toolkit/query").FetchArgs, unknown, import("@reduxjs/toolkit/query").FetchBaseQueryError>, never, import("../../product").GetBestsellersResponse, "buymeuaApi", unknown>;
30
+ getBestSellers: import("@reduxjs/toolkit/query").QueryDefinition<void | import("../../product").GetBestsellersRequest, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@reduxjs/toolkit/query").FetchArgs, unknown, import("@reduxjs/toolkit/query").FetchBaseQueryError>, never, import("../../product").GetBestsellersResponse, "buymeuaApi", unknown>;
31
31
  getProductDetails: import("@reduxjs/toolkit/query").QueryDefinition<import("../../product").GetProductDetailsRequest, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@reduxjs/toolkit/query").FetchArgs, unknown, import("@reduxjs/toolkit/query").FetchBaseQueryError>, never, import("../../product").GetProductDetailsResponse, "buymeuaApi", unknown>;
32
- getSupplierProducts: import("@reduxjs/toolkit/query").InfiniteQueryDefinition<import("../../product").GetSupplierProductsRequest, number, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@reduxjs/toolkit/query").FetchArgs, unknown, import("@reduxjs/toolkit/query").FetchBaseQueryError>, never, import("../../product").GetSupplierProductsResponse, "buymeuaApi", unknown>;
32
+ getProductAttributes: import("@reduxjs/toolkit/query").QueryDefinition<void | import("../../product").GetProductAttributesRequest, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@reduxjs/toolkit/query").FetchArgs, unknown, import("@reduxjs/toolkit/query").FetchBaseQueryError>, never, import("../../product").GetProductAttributesResponse, "buymeuaApi", unknown>;
33
+ getProductOptions: import("@reduxjs/toolkit/query").QueryDefinition<void | import("../../product").GetProductOptionsRequest, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@reduxjs/toolkit/query").FetchArgs, unknown, import("@reduxjs/toolkit/query").FetchBaseQueryError>, never, import("../../product").GetProductOptionsResponse, "buymeuaApi", unknown>;
34
+ getSupplierProducts: import("@reduxjs/toolkit/query").InfiniteQueryDefinition<void | import("../../product").GetSupplierProductsRequest, number, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@reduxjs/toolkit/query").FetchArgs, unknown, import("@reduxjs/toolkit/query").FetchBaseQueryError>, never, import("../../product").GetSupplierProductsResponse, "buymeuaApi", unknown>;
33
35
  getSupplierProductDetails: import("@reduxjs/toolkit/query").QueryDefinition<import("../../product").GetSupplierProductDetailsRequest, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@reduxjs/toolkit/query").FetchArgs, unknown, import("@reduxjs/toolkit/query").FetchBaseQueryError>, never, import("../../product").GetSupplierProductDetailsResponse, "buymeuaApi", unknown>;
34
36
  }, "Product", never> & {
35
37
  getFavoriteCount: import("@reduxjs/toolkit/query").QueryDefinition<void, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@reduxjs/toolkit/query").FetchArgs, unknown, import("@reduxjs/toolkit/query").FetchBaseQueryError>, "Product", GetFavoriteCountResponse, "buymeuaApi", unknown>;
@@ -1 +1 @@
1
- {"version":3,"file":"favoriteApi.d.ts","sourceRoot":"","sources":["../../../../src/entities/favorite/api/favoriteApi.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,8BAA8B,EAC9B,+BAA+B,EAE/B,wBAAwB,EACxB,+BAA+B,EAC/B,gCAAgC,EAChC,2BAA2B,EAC3B,4BAA4B,EAC7B,MAAM,gBAAgB,CAAC;AAKxB,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2SA+ZpB,CAAC;AAEL,eAAO,MACL,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GACxB,oCAAoC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2CACpC,wCAAwC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2CAExC,kCAAkC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAElC,qCAAqC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EACxB,CAAC"}
1
+ {"version":3,"file":"favoriteApi.d.ts","sourceRoot":"","sources":["../../../../src/entities/favorite/api/favoriteApi.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,8BAA8B,EAC9B,+BAA+B,EAE/B,wBAAwB,EACxB,+BAA+B,EAC/B,gCAAgC,EAChC,2BAA2B,EAC3B,4BAA4B,EAC7B,MAAM,gBAAgB,CAAC;AAKxB,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2SA+ZpB,CAAC;AAEL,eAAO,MACL,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GACxB,oCAAoC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2CACpC,wCAAwC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2CAExC,kCAAkC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAElC,qCAAqC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EACxB,CAAC"}