@vansite/ts-sharetribe-flex-sdk 1.0.34 → 3.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.
- package/README.md +1 -1
- package/dist/endpoints/assets/index.d.ts +47 -0
- package/dist/endpoints/auth/index.d.ts +45 -0
- package/dist/endpoints/integrationApi/AvailabilityExceptions.d.ts +66 -0
- package/dist/endpoints/integrationApi/Events.d.ts +43 -0
- package/dist/endpoints/integrationApi/Images.d.ts +36 -0
- package/dist/endpoints/integrationApi/Listings.d.ts +87 -0
- package/dist/endpoints/integrationApi/Marketplace.d.ts +30 -0
- package/dist/endpoints/integrationApi/Stock.d.ts +42 -0
- package/dist/endpoints/integrationApi/StockAdjustments.d.ts +64 -0
- package/dist/{types/endpoints/integrationApi/StockReservation.d.ts → endpoints/integrationApi/StockReservations.d.ts} +3 -4
- package/dist/endpoints/integrationApi/Transactions.d.ts +76 -0
- package/dist/endpoints/integrationApi/Users.d.ts +72 -0
- package/dist/endpoints/integrationApi/index.d.ts +58 -0
- package/dist/endpoints/marketplace/AvailabilityExceptions.d.ts +69 -0
- package/dist/endpoints/marketplace/Bookings.d.ts +45 -0
- package/dist/endpoints/marketplace/CurrentUser.d.ts +110 -0
- package/dist/endpoints/marketplace/Images.d.ts +38 -0
- package/dist/endpoints/marketplace/Listings.d.ts +52 -0
- package/dist/endpoints/marketplace/Marketplace.d.ts +33 -0
- package/dist/endpoints/marketplace/Messages.d.ts +51 -0
- package/dist/endpoints/marketplace/OwnListings.d.ts +116 -0
- package/dist/endpoints/marketplace/PasswordReset.d.ts +50 -0
- package/dist/endpoints/marketplace/ProcessTransitions.d.ts +42 -0
- package/dist/endpoints/marketplace/Reviews.d.ts +49 -0
- package/dist/endpoints/marketplace/SitemapData.d.ts +60 -0
- package/dist/endpoints/marketplace/Stock.d.ts +50 -0
- package/dist/endpoints/marketplace/StockAdjustments.d.ts +64 -0
- package/dist/endpoints/marketplace/StripeAccount.d.ts +56 -0
- package/dist/endpoints/marketplace/StripeAccountLinks.d.ts +42 -0
- package/dist/endpoints/marketplace/StripeCustomer.d.ts +62 -0
- package/dist/endpoints/marketplace/StripePersons.d.ts +37 -0
- package/dist/endpoints/marketplace/StripeSetupIntents.d.ts +42 -0
- package/dist/endpoints/marketplace/TimeSlots.d.ts +40 -0
- package/dist/endpoints/marketplace/Transactions.d.ts +89 -0
- package/dist/endpoints/marketplace/Users.d.ts +34 -0
- package/dist/endpoints/marketplace/index.d.ts +82 -0
- package/dist/index.d.ts +161 -0
- package/dist/index.js +3 -0
- package/dist/{ts-sharetribe-flex-sdk.cjs.LICENSE.txt → index.js.LICENSE.txt} +35 -5
- package/dist/index.js.map +1 -0
- package/dist/index.mjs +3 -0
- package/dist/{ts-sharetribe-flex-sdk.js.LICENSE.txt → index.mjs.LICENSE.txt} +35 -5
- package/dist/index.mjs.map +1 -0
- package/dist/index.umd.js +3 -0
- package/dist/{ts-sharetribe-flex-sdk.mjs.LICENSE.txt → index.umd.js.LICENSE.txt} +35 -5
- package/dist/index.umd.js.map +1 -0
- package/dist/integrationSdk.d.ts +119 -0
- package/dist/sdk.d.ts +211 -0
- package/dist/sdkTypes/BigDecimal.d.ts +30 -0
- package/dist/sdkTypes/LatLng.d.ts +34 -0
- package/dist/sdkTypes/LatLngBounds.d.ts +51 -0
- package/dist/sdkTypes/Money.d.ts +35 -0
- package/dist/sdkTypes/UUID.d.ts +45 -0
- package/dist/types/apiConfigs.d.ts +104 -0
- package/dist/types/assets/index.d.ts +101 -0
- package/dist/types/authentication/index.d.ts +152 -0
- package/dist/types/axios.d.ts +10 -0
- package/dist/types/config.d.ts +99 -0
- package/dist/types/endpoints/assets/index.d.ts +22 -36
- package/dist/types/endpoints/assets/index.d.ts.map +1 -1
- package/dist/types/endpoints/auth/index.d.ts +20 -41
- package/dist/types/endpoints/auth/index.d.ts.map +1 -1
- package/dist/types/endpoints/integrationApi/AvailabilityExceptions.d.ts +30 -49
- package/dist/types/endpoints/integrationApi/AvailabilityExceptions.d.ts.map +1 -1
- package/dist/types/endpoints/integrationApi/Events.d.ts +23 -27
- package/dist/types/endpoints/integrationApi/Events.d.ts.map +1 -1
- package/dist/types/endpoints/integrationApi/Images.d.ts +17 -28
- package/dist/types/endpoints/integrationApi/Images.d.ts.map +1 -1
- package/dist/types/endpoints/integrationApi/Listings.d.ts +42 -104
- package/dist/types/endpoints/integrationApi/Listings.d.ts.map +1 -1
- package/dist/types/endpoints/integrationApi/Marketplace.d.ts +12 -20
- package/dist/types/endpoints/integrationApi/Marketplace.d.ts.map +1 -1
- package/dist/types/endpoints/integrationApi/Stock.d.ts +22 -28
- package/dist/types/endpoints/integrationApi/Stock.d.ts.map +1 -1
- package/dist/types/endpoints/integrationApi/StockAdjustments.d.ts +35 -35
- package/dist/types/endpoints/integrationApi/StockAdjustments.d.ts.map +1 -1
- package/dist/types/endpoints/integrationApi/StockReservations.d.ts +43 -0
- package/dist/types/endpoints/integrationApi/StockReservations.d.ts.map +1 -0
- package/dist/types/endpoints/integrationApi/Transactions.d.ts +36 -80
- package/dist/types/endpoints/integrationApi/Transactions.d.ts.map +1 -1
- package/dist/types/endpoints/integrationApi/Users.d.ts +35 -70
- package/dist/types/endpoints/integrationApi/Users.d.ts.map +1 -1
- package/dist/types/endpoints/integrationApi/index.d.ts +40 -40
- package/dist/types/endpoints/integrationApi/index.d.ts.map +1 -1
- package/dist/types/endpoints/marketplace/AvailabilityExceptions.d.ts +34 -48
- package/dist/types/endpoints/marketplace/AvailabilityExceptions.d.ts.map +1 -1
- package/dist/types/endpoints/marketplace/Bookings.d.ts +24 -23
- package/dist/types/endpoints/marketplace/Bookings.d.ts.map +1 -1
- package/dist/types/endpoints/marketplace/CurrentUser.d.ts +54 -125
- package/dist/types/endpoints/marketplace/CurrentUser.d.ts.map +1 -1
- package/dist/types/endpoints/marketplace/Images.d.ts +19 -27
- package/dist/types/endpoints/marketplace/Images.d.ts.map +1 -1
- package/dist/types/endpoints/marketplace/Listings.d.ts +26 -25
- package/dist/types/endpoints/marketplace/Listings.d.ts.map +1 -1
- package/dist/types/endpoints/marketplace/Marketplace.d.ts +15 -19
- package/dist/types/endpoints/marketplace/Marketplace.d.ts.map +1 -1
- package/dist/types/endpoints/marketplace/Messages.d.ts +24 -29
- package/dist/types/endpoints/marketplace/Messages.d.ts.map +1 -1
- package/dist/types/endpoints/marketplace/OwnListings.d.ts +55 -119
- package/dist/types/endpoints/marketplace/OwnListings.d.ts.map +1 -1
- package/dist/types/endpoints/marketplace/PasswordReset.d.ts +23 -35
- package/dist/types/endpoints/marketplace/PasswordReset.d.ts.map +1 -1
- package/dist/types/endpoints/marketplace/ProcessTransitions.d.ts +22 -22
- package/dist/types/endpoints/marketplace/ProcessTransitions.d.ts.map +1 -1
- package/dist/types/endpoints/marketplace/Reviews.d.ts +23 -25
- package/dist/types/endpoints/marketplace/Reviews.d.ts.map +1 -1
- package/dist/types/endpoints/marketplace/SitemapData.d.ts +61 -0
- package/dist/types/endpoints/marketplace/SitemapData.d.ts.map +1 -0
- package/dist/types/endpoints/marketplace/Stock.d.ts +30 -26
- package/dist/types/endpoints/marketplace/Stock.d.ts.map +1 -1
- package/dist/types/endpoints/marketplace/StockAdjustments.d.ts +36 -34
- package/dist/types/endpoints/marketplace/StockAdjustments.d.ts.map +1 -1
- package/dist/types/endpoints/marketplace/StripeAccount.d.ts +28 -49
- package/dist/types/endpoints/marketplace/StripeAccount.d.ts.map +1 -1
- package/dist/types/endpoints/marketplace/StripeAccountLinks.d.ts +22 -31
- package/dist/types/endpoints/marketplace/StripeAccountLinks.d.ts.map +1 -1
- package/dist/types/endpoints/marketplace/StripeCustomer.d.ts +32 -46
- package/dist/types/endpoints/marketplace/StripeCustomer.d.ts.map +1 -1
- package/dist/types/endpoints/marketplace/StripePersons.d.ts +17 -25
- package/dist/types/endpoints/marketplace/StripePersons.d.ts.map +1 -1
- package/dist/types/endpoints/marketplace/StripeSetupIntents.d.ts +24 -24
- package/dist/types/endpoints/marketplace/StripeSetupIntents.d.ts.map +1 -1
- package/dist/types/endpoints/marketplace/TimeSlots.d.ts +20 -23
- package/dist/types/endpoints/marketplace/TimeSlots.d.ts.map +1 -1
- package/dist/types/endpoints/marketplace/Transactions.d.ts +45 -81
- package/dist/types/endpoints/marketplace/Transactions.d.ts.map +1 -1
- package/dist/types/endpoints/marketplace/Users.d.ts +15 -22
- package/dist/types/endpoints/marketplace/Users.d.ts.map +1 -1
- package/dist/types/endpoints/marketplace/index.d.ts +52 -40
- package/dist/types/endpoints/marketplace/index.d.ts.map +1 -1
- package/dist/types/index.d.ts +15 -30
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/integration/events.d.ts +87 -0
- package/dist/types/integrationSdk.d.ts +4 -5
- package/dist/types/integrationSdk.d.ts.map +1 -1
- package/dist/types/marketplace/availabilityExceptions.d.ts +99 -0
- package/dist/types/marketplace/availabilityPlan.d.ts +17 -0
- package/dist/types/marketplace/bookings.d.ts +80 -0
- package/dist/types/marketplace/currentUser.d.ts +202 -0
- package/dist/types/marketplace/images.d.ts +65 -0
- package/dist/types/marketplace/listings.d.ts +169 -0
- package/dist/types/marketplace/marketplace.d.ts +30 -0
- package/dist/types/marketplace/messages.d.ts +87 -0
- package/dist/types/marketplace/ownListings.d.ts +155 -0
- package/dist/types/marketplace/passwordReset.d.ts +54 -0
- package/dist/types/marketplace/processTransitions.d.ts +56 -0
- package/dist/types/marketplace/reviews.d.ts +108 -0
- package/dist/types/marketplace/sitemapData.d.ts +47 -0
- package/dist/types/marketplace/stock.d.ts +45 -0
- package/dist/types/marketplace/stockAdjustment.d.ts +97 -0
- package/dist/types/marketplace/stockReservations.d.ts +89 -0
- package/dist/types/marketplace/stripeAccount.d.ts +67 -0
- package/dist/types/marketplace/stripeAccountLinks.d.ts +55 -0
- package/dist/types/marketplace/stripeCustomer.d.ts +94 -0
- package/dist/types/marketplace/stripePaymentMethod.d.ts +21 -0
- package/dist/types/marketplace/stripePersons.d.ts +48 -0
- package/dist/types/marketplace/stripeSetupIntents.d.ts +48 -0
- package/dist/types/marketplace/timeSlots.d.ts +51 -0
- package/dist/types/marketplace/transactions.d.ts +200 -0
- package/dist/types/marketplace/user.d.ts +200 -0
- package/dist/types/sdk-types.d.ts +10 -0
- package/dist/types/sdk.d.ts +6 -7
- package/dist/types/sdk.d.ts.map +1 -1
- package/dist/types/sdkTypes/BigDecimal.d.ts +1 -1
- package/dist/types/sdkTypes/BigDecimal.d.ts.map +1 -1
- package/dist/types/sdkTypes/LatLng.d.ts +1 -1
- package/dist/types/sdkTypes/LatLng.d.ts.map +1 -1
- package/dist/types/sdkTypes/LatLngBounds.d.ts +1 -1
- package/dist/types/sdkTypes/LatLngBounds.d.ts.map +1 -1
- package/dist/types/sdkTypes/Money.d.ts +9 -2
- package/dist/types/sdkTypes/Money.d.ts.map +1 -1
- package/dist/types/sdkTypes/UUID.d.ts +8 -1
- package/dist/types/sdkTypes/UUID.d.ts.map +1 -1
- package/dist/types/sharetribe.d.ts +227 -0
- package/dist/types/store.d.ts +22 -0
- package/dist/types/types/apiConfigs.d.ts.map +1 -1
- package/dist/types/types/assets/index.d.ts +74 -36
- package/dist/types/types/assets/index.d.ts.map +1 -1
- package/dist/types/types/authentication/index.d.ts +111 -60
- package/dist/types/types/authentication/index.d.ts.map +1 -1
- package/dist/types/types/axios.d.ts.map +1 -1
- package/dist/types/types/config.d.ts +1 -39
- package/dist/types/types/config.d.ts.map +1 -1
- package/dist/types/types/integration/events.d.ts +52 -20
- package/dist/types/types/integration/events.d.ts.map +1 -1
- package/dist/types/types/marketplace/availabilityExceptions.d.ts +59 -16
- package/dist/types/types/marketplace/availabilityExceptions.d.ts.map +1 -1
- package/dist/types/types/marketplace/availabilityPlan.d.ts +18 -0
- package/dist/types/types/marketplace/availabilityPlan.d.ts.map +1 -0
- package/dist/types/types/marketplace/bookings.d.ts +48 -14
- package/dist/types/types/marketplace/bookings.d.ts.map +1 -1
- package/dist/types/types/marketplace/currentUser.d.ts +99 -55
- package/dist/types/types/marketplace/currentUser.d.ts.map +1 -1
- package/dist/types/types/marketplace/images.d.ts +40 -14
- package/dist/types/types/marketplace/images.d.ts.map +1 -1
- package/dist/types/types/marketplace/listings.d.ts +96 -66
- package/dist/types/types/marketplace/listings.d.ts.map +1 -1
- package/dist/types/types/marketplace/marketplace.d.ts +16 -6
- package/dist/types/types/marketplace/marketplace.d.ts.map +1 -1
- package/dist/types/types/marketplace/messages.d.ts +53 -15
- package/dist/types/types/marketplace/messages.d.ts.map +1 -1
- package/dist/types/types/marketplace/ownListings.d.ts +92 -65
- package/dist/types/types/marketplace/ownListings.d.ts.map +1 -1
- package/dist/types/types/marketplace/passwordReset.d.ts +32 -9
- package/dist/types/types/marketplace/passwordReset.d.ts.map +1 -1
- package/dist/types/types/marketplace/processTransitions.d.ts +33 -14
- package/dist/types/types/marketplace/processTransitions.d.ts.map +1 -1
- package/dist/types/types/marketplace/reviews.d.ts +72 -23
- package/dist/types/types/marketplace/reviews.d.ts.map +1 -1
- package/dist/types/types/marketplace/sitemapData.d.ts +48 -0
- package/dist/types/types/marketplace/sitemapData.d.ts.map +1 -0
- package/dist/types/types/marketplace/stock.d.ts +23 -6
- package/dist/types/types/marketplace/stock.d.ts.map +1 -1
- package/dist/types/types/marketplace/stockAdjustment.d.ts +60 -14
- package/dist/types/types/marketplace/stockAdjustment.d.ts.map +1 -1
- package/dist/types/types/marketplace/stockReservations.d.ts +59 -14
- package/dist/types/types/marketplace/stockReservations.d.ts.map +1 -1
- package/dist/types/types/marketplace/stripeAccount.d.ts +28 -5
- package/dist/types/types/marketplace/stripeAccount.d.ts.map +1 -1
- package/dist/types/types/marketplace/stripeAccountLinks.d.ts +26 -6
- package/dist/types/types/marketplace/stripeAccountLinks.d.ts.map +1 -1
- package/dist/types/types/marketplace/stripeCustomer.d.ts +60 -13
- package/dist/types/types/marketplace/stripeCustomer.d.ts.map +1 -1
- package/dist/types/types/marketplace/stripePaymentMethod.d.ts +1 -2
- package/dist/types/types/marketplace/stripePaymentMethod.d.ts.map +1 -1
- package/dist/types/types/marketplace/stripePersons.d.ts +17 -15
- package/dist/types/types/marketplace/stripePersons.d.ts.map +1 -1
- package/dist/types/types/marketplace/stripeSetupIntents.d.ts +16 -14
- package/dist/types/types/marketplace/stripeSetupIntents.d.ts.map +1 -1
- package/dist/types/types/marketplace/timeSlots.d.ts +13 -15
- package/dist/types/types/marketplace/timeSlots.d.ts.map +1 -1
- package/dist/types/types/marketplace/transactions.d.ts +77 -83
- package/dist/types/types/marketplace/transactions.d.ts.map +1 -1
- package/dist/types/types/marketplace/user.d.ts +85 -64
- package/dist/types/types/marketplace/user.d.ts.map +1 -1
- package/dist/types/types/sharetribe.d.ts +130 -92
- package/dist/types/types/sharetribe.d.ts.map +1 -1
- package/dist/types/types/store.d.ts +3 -14
- package/dist/types/types/store.d.ts.map +1 -1
- package/dist/types/utils/apis.d.ts +1 -1
- package/dist/types/utils/apis.d.ts.map +1 -1
- package/dist/types/utils/config.d.ts.map +1 -1
- package/dist/types/utils/prepare-axios-instance.d.ts +1 -1
- package/dist/types/utils/prepare-axios-instance.d.ts.map +1 -1
- package/dist/types/utils/stores/BrowserStore.d.ts +17 -4
- package/dist/types/utils/stores/BrowserStore.d.ts.map +1 -1
- package/dist/types/utils/stores/ExpressStore.d.ts +26 -8
- package/dist/types/utils/stores/ExpressStore.d.ts.map +1 -1
- package/dist/types/utils/stores/MemoryStore.d.ts +1 -2
- package/dist/types/utils/stores/MemoryStore.d.ts.map +1 -1
- package/dist/types/utils/transit.d.ts +1 -1
- package/dist/types/utils/transit.d.ts.map +1 -1
- package/dist/types/utils/util.d.ts +2 -2
- package/dist/types/utils/util.d.ts.map +1 -1
- package/dist/utils/apis.d.ts +8 -0
- package/dist/utils/config.d.ts +32 -0
- package/dist/utils/convert-types.d.ts +13 -0
- package/dist/utils/parameter-serializer.d.ts +23 -0
- package/dist/utils/prepare-axios-instance.d.ts +14 -0
- package/dist/utils/stores/BrowserStore.d.ts +51 -0
- package/dist/utils/stores/ExpressStore.d.ts +67 -0
- package/dist/utils/stores/MemoryStore.d.ts +23 -0
- package/dist/utils/stores/store.d.ts +8 -0
- package/dist/utils/transit.d.ts +28 -0
- package/dist/utils/util.d.ts +15 -0
- package/package.json +16 -14
- package/dist/ts-sharetribe-flex-sdk.cjs +0 -3
- package/dist/ts-sharetribe-flex-sdk.cjs.map +0 -1
- package/dist/ts-sharetribe-flex-sdk.js +0 -3
- package/dist/ts-sharetribe-flex-sdk.js.map +0 -1
- package/dist/ts-sharetribe-flex-sdk.mjs +0 -3
- package/dist/ts-sharetribe-flex-sdk.mjs.map +0 -1
- package/dist/types/endpoints/integrationApi/StockReservation.d.ts.map +0 -1
|
@@ -1,60 +1,69 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* @fileoverview Type definitions for
|
|
3
|
-
|
|
2
|
+
* @fileoverview Type definitions for Listings in the Sharetribe Marketplace API.
|
|
3
|
+
*/
|
|
4
|
+
import { ApiMeta, ApiParameter, ExtraParameterType, LatLng, LatLngBounds, Money, QueryMeta, QueryPub, Relationship, RelationshipTypeMap, UUID } from "../sharetribe";
|
|
5
|
+
import { AvailabilityPlan } from "./availabilityPlan";
|
|
6
|
+
/**
|
|
7
|
+
* Public listing states
|
|
4
8
|
*/
|
|
5
|
-
import { ApiMeta, ApiParameter, ExtraParameter, ExtraParameterType, LatLng, Money, QueryMeta, QueryPub, Relationship, RelationshipTypeMap, UUID } from "../sharetribe";
|
|
6
|
-
import LatLngBounds from "../../sdkTypes/LatLngBounds";
|
|
7
|
-
export type ListingsEndpoints = "show" | "query" | "create" | "update" | "close" | "open" | "approve";
|
|
8
|
-
export type ListingsRelationshipsFields = "marketplace" | "author" | "author.profileImage" | "author.marketplace" | "author.stripeAccount" | "author.effectivePermissionSet" | "images" | "currentStock";
|
|
9
9
|
export type ListingState = "published" | "closed" | "draft" | "pendingApproval";
|
|
10
|
+
/**
|
|
11
|
+
* Availability mode returned in query results
|
|
12
|
+
*/
|
|
10
13
|
export type ListingAvailability = "day-full" | "day-partial" | "time-full" | "time-partial";
|
|
14
|
+
/**
|
|
15
|
+
* Listing resource
|
|
16
|
+
*/
|
|
11
17
|
export interface Listing<I extends boolean = false> {
|
|
12
18
|
id: UUID;
|
|
13
19
|
type: "listing";
|
|
14
|
-
attributes:
|
|
20
|
+
attributes: {
|
|
21
|
+
title: string;
|
|
22
|
+
description: string;
|
|
23
|
+
price: Money;
|
|
24
|
+
geolocation: LatLng;
|
|
25
|
+
state: ListingState;
|
|
26
|
+
deleted: boolean;
|
|
27
|
+
createdAt: Date;
|
|
28
|
+
availabilityPlan: AvailabilityPlan | null;
|
|
29
|
+
publicData: ListingPublicData & ListingCustomPublicData;
|
|
30
|
+
metadata: ListingMetadata & ListingCustomMetadata;
|
|
31
|
+
} & (I extends true ? {
|
|
32
|
+
privateData: ListingPrivateData & ListingCustomPrivateData;
|
|
33
|
+
} : {});
|
|
15
34
|
}
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
deleted: boolean;
|
|
20
|
-
description: string;
|
|
21
|
-
geolocation: LatLng;
|
|
22
|
-
metadata: ListingMetadata & ListingCustomMetadata;
|
|
23
|
-
price: Money;
|
|
24
|
-
publicData: ListingPublicData & ListingCustomPublicData;
|
|
25
|
-
state: ListingState;
|
|
26
|
-
title: string;
|
|
27
|
-
} & (I extends true ? {
|
|
28
|
-
privateData: ListingPrivateData & ListingCustomPrivateData;
|
|
29
|
-
} : {});
|
|
30
|
-
type ListingAvailabilityPlanTypes = "availability-plan/day" | "availability-plan/time";
|
|
31
|
-
type ListingAvailabilityPlanEntry<T extends ListingAvailabilityPlanTypes> = {
|
|
32
|
-
dayOfWeek: "mon" | "tue" | "wed" | "thu" | "fri" | "sat" | "sun";
|
|
33
|
-
seats: number;
|
|
34
|
-
} & (T extends "availability-plan/time" ? {
|
|
35
|
-
startTime: string;
|
|
36
|
-
endTime: string;
|
|
37
|
-
} : {});
|
|
38
|
-
type ListingAvailabilityPlan<T extends ListingAvailabilityPlanTypes = "availability-plan/day"> = {
|
|
39
|
-
type: string;
|
|
40
|
-
timezone: string;
|
|
41
|
-
entries: Array<ListingAvailabilityPlanEntry<T>>;
|
|
42
|
-
};
|
|
35
|
+
/**
|
|
36
|
+
* With relationships
|
|
37
|
+
*/
|
|
43
38
|
export interface ListingWithRelationships<I extends boolean = false> extends Listing<I> {
|
|
44
39
|
relationships: {
|
|
45
40
|
marketplace: Relationship<false, "marketplace">;
|
|
46
|
-
author: Relationship<false, "
|
|
47
|
-
images: Relationship<true, "
|
|
48
|
-
currentStock
|
|
41
|
+
author: Relationship<false, "author">;
|
|
42
|
+
images: Relationship<true, "images">;
|
|
43
|
+
currentStock?: Relationship<false, "currentStock">;
|
|
49
44
|
};
|
|
50
45
|
}
|
|
51
|
-
export type
|
|
46
|
+
export type ListingResource<R extends boolean, I extends boolean = false> = R extends true ? ListingWithRelationships<I> : Listing<I>;
|
|
47
|
+
/**
|
|
48
|
+
* Relationship fields
|
|
49
|
+
*/
|
|
50
|
+
export type ListingsRelationshipsFields = "marketplace" | "author" | "author.profileImage" | "author.marketplace" | "author.stripeAccount" | "author.effectivePermissionSet" | "images" | "currentStock";
|
|
51
|
+
/**
|
|
52
|
+
* Available endpoints
|
|
53
|
+
*/
|
|
54
|
+
export type ListingsEndpoints = "show" | "query" | "create" | "update" | "close" | "open" | "approve";
|
|
55
|
+
/**
|
|
56
|
+
* Base request parameters
|
|
57
|
+
*/
|
|
52
58
|
export interface ListingsParameter extends ApiParameter {
|
|
53
59
|
include?: ListingsRelationshipsFields[];
|
|
54
60
|
}
|
|
55
|
-
|
|
61
|
+
/**
|
|
62
|
+
* Endpoint parameters
|
|
63
|
+
*/
|
|
64
|
+
export type ListingsShowParameter = ListingsParameter & {
|
|
56
65
|
id: UUID | string;
|
|
57
|
-
}
|
|
66
|
+
};
|
|
58
67
|
export interface ListingsQueryParameter extends ListingsParameter {
|
|
59
68
|
authorId?: UUID | string;
|
|
60
69
|
ids?: UUID[] | string[];
|
|
@@ -68,9 +77,9 @@ export interface ListingsQueryParameter extends ListingsParameter {
|
|
|
68
77
|
availability?: ListingAvailability;
|
|
69
78
|
minDuration?: number;
|
|
70
79
|
minStock?: number;
|
|
71
|
-
[keyof: QueryPub]: string;
|
|
72
|
-
[keyof: QueryMeta]: string;
|
|
73
80
|
sort?: string;
|
|
81
|
+
[keyof: QueryPub]: string | undefined;
|
|
82
|
+
[keyof: QueryMeta]: string | undefined;
|
|
74
83
|
}
|
|
75
84
|
export interface ListingsCreateParameter extends ListingsParameter {
|
|
76
85
|
title: string;
|
|
@@ -79,60 +88,81 @@ export interface ListingsCreateParameter extends ListingsParameter {
|
|
|
79
88
|
description?: string;
|
|
80
89
|
geolocation?: LatLng | string;
|
|
81
90
|
price?: Money | string;
|
|
82
|
-
availabilityPlan?:
|
|
91
|
+
availabilityPlan?: AvailabilityPlan | null;
|
|
83
92
|
publicData?: ListingPublicData & ListingCustomPublicData;
|
|
84
93
|
privateData?: ListingPrivateData & ListingCustomPrivateData;
|
|
85
94
|
metadata?: ListingMetadata & ListingCustomMetadata;
|
|
86
95
|
images?: UUID[] | string[];
|
|
87
96
|
}
|
|
88
|
-
export
|
|
97
|
+
export type ListingsUpdateParameter = ListingsParameter & {
|
|
89
98
|
id: UUID | string;
|
|
90
99
|
title?: string;
|
|
91
100
|
description?: string;
|
|
92
101
|
price?: Money | string;
|
|
93
|
-
availabilityPlan?:
|
|
102
|
+
availabilityPlan?: AvailabilityPlan | null;
|
|
94
103
|
publicData?: ListingPublicData & ListingCustomPublicData;
|
|
95
104
|
privateData?: ListingPrivateData & ListingCustomPrivateData;
|
|
96
105
|
metadata?: ListingMetadata & ListingCustomMetadata;
|
|
97
106
|
images?: UUID[] | string[];
|
|
98
|
-
}
|
|
99
|
-
export
|
|
107
|
+
};
|
|
108
|
+
export type ListingsCloseParameter = ListingsParameter & {
|
|
100
109
|
id: UUID | string;
|
|
101
|
-
}
|
|
102
|
-
export
|
|
110
|
+
};
|
|
111
|
+
export type ListingsOpenParameter = ListingsParameter & {
|
|
103
112
|
id: UUID | string;
|
|
104
|
-
}
|
|
105
|
-
export
|
|
113
|
+
};
|
|
114
|
+
export type ListingsApproveParameter = ListingsParameter & {
|
|
106
115
|
id: UUID | string;
|
|
107
|
-
}
|
|
116
|
+
};
|
|
117
|
+
/**
|
|
118
|
+
* Custom data
|
|
119
|
+
*/
|
|
108
120
|
export interface ListingPublicData {
|
|
109
121
|
[key: string]: any;
|
|
110
122
|
}
|
|
111
|
-
export interface ListingCustomPublicData {
|
|
123
|
+
export interface ListingCustomPublicData extends Record<string, unknown> {
|
|
112
124
|
}
|
|
113
125
|
export interface ListingPrivateData {
|
|
114
126
|
[key: string]: any;
|
|
115
127
|
}
|
|
116
|
-
export interface ListingCustomPrivateData {
|
|
128
|
+
export interface ListingCustomPrivateData extends Record<string, unknown> {
|
|
117
129
|
}
|
|
118
130
|
export interface ListingMetadata {
|
|
119
131
|
[key: string]: any;
|
|
120
132
|
}
|
|
121
|
-
export interface ListingCustomMetadata {
|
|
133
|
+
export interface ListingCustomMetadata extends Record<string, unknown> {
|
|
122
134
|
}
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
type
|
|
135
|
+
/**
|
|
136
|
+
* All parameter types
|
|
137
|
+
*/
|
|
138
|
+
type AllListingsParameter = ListingsShowParameter | ListingsQueryParameter | ListingsCreateParameter | ListingsUpdateParameter | ListingsCloseParameter | ListingsOpenParameter | ListingsApproveParameter;
|
|
139
|
+
/**
|
|
140
|
+
* Include detection — fixes TS2536
|
|
141
|
+
*/
|
|
142
|
+
type HasInclude<P> = P extends {
|
|
143
|
+
include: infer I extends readonly ListingsRelationshipsFields[];
|
|
144
|
+
} ? I : never;
|
|
145
|
+
type IncludesRelationships<P> = HasInclude<P> extends never ? false : true;
|
|
146
|
+
type IncludedResources<P> = HasInclude<P> extends infer Fields extends ListingsRelationshipsFields[] ? RelationshipTypeMap[Fields[number]][] : never;
|
|
147
|
+
/**
|
|
148
|
+
* Expand behavior
|
|
149
|
+
*/
|
|
150
|
+
type ExpandResult<T, EP extends ExtraParameterType | undefined> = EP extends {
|
|
127
151
|
expand: true;
|
|
128
|
-
} ?
|
|
152
|
+
} ? T : EP extends {
|
|
129
153
|
expand: false;
|
|
130
|
-
} ? Omit<
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
154
|
+
} ? Omit<T, "attributes"> : Omit<T, "attributes">;
|
|
155
|
+
/**
|
|
156
|
+
* Response data per endpoint
|
|
157
|
+
*/
|
|
158
|
+
type ResponseData<E extends ListingsEndpoints, P extends AllListingsParameter, EP extends ExtraParameterType | undefined, I extends boolean = false> = E extends "query" ? ListingResource<IncludesRelationships<P>, I>[] : E extends "show" | "create" | "update" | "close" | "open" | "approve" ? ExpandResult<ListingResource<IncludesRelationships<P>, I>, EP> : never;
|
|
159
|
+
/**
|
|
160
|
+
* Final response
|
|
161
|
+
*/
|
|
162
|
+
export type ListingsResponse<E extends ListingsEndpoints, P extends AllListingsParameter, EP extends ExtraParameterType | undefined = undefined, I extends boolean = false> = {
|
|
163
|
+
data: ResponseData<E, P, EP, I>;
|
|
164
|
+
} & (IncludesRelationships<P> extends true ? {
|
|
165
|
+
included: IncludedResources<P>;
|
|
136
166
|
} : {}) & (E extends "query" ? {
|
|
137
167
|
meta: ApiMeta;
|
|
138
168
|
} : {});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"listings.d.ts","sourceRoot":"","sources":["../../../../src/types/marketplace/listings.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"listings.d.ts","sourceRoot":"","sources":["../../../../src/types/marketplace/listings.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EACL,OAAO,EACP,YAAY,EACZ,kBAAkB,EAClB,MAAM,EACN,YAAY,EACZ,KAAK,EACL,SAAS,EACT,QAAQ,EACR,YAAY,EACZ,mBAAmB,EACnB,IAAI,EACL,MAAM,eAAe,CAAC;AACvB,OAAO,EAAC,gBAAgB,EAAC,MAAM,oBAAoB,CAAC;AAEpD;;GAEG;AACH,MAAM,MAAM,YAAY,GACpB,WAAW,GACX,QAAQ,GACR,OAAO,GACP,iBAAiB,CAAC;AAEtB;;GAEG;AACH,MAAM,MAAM,mBAAmB,GAC3B,UAAU,GACV,aAAa,GACb,WAAW,GACX,cAAc,CAAC;AAEnB;;GAEG;AACH,MAAM,WAAW,OAAO,CAAC,CAAC,SAAS,OAAO,GAAG,KAAK;IAChD,EAAE,EAAE,IAAI,CAAC;IACT,IAAI,EAAE,SAAS,CAAC;IAChB,UAAU,EAAE;QACV,KAAK,EAAE,MAAM,CAAC;QACd,WAAW,EAAE,MAAM,CAAC;QACpB,KAAK,EAAE,KAAK,CAAC;QACb,WAAW,EAAE,MAAM,CAAC;QACpB,KAAK,EAAE,YAAY,CAAC;QACpB,OAAO,EAAE,OAAO,CAAC;QACjB,SAAS,EAAE,IAAI,CAAC;QAChB,gBAAgB,EAAE,gBAAgB,GAAG,IAAI,CAAC;QAC1C,UAAU,EAAE,iBAAiB,GAAG,uBAAuB,CAAC;QACxD,QAAQ,EAAE,eAAe,GAAG,qBAAqB,CAAC;KACnD,GAAG,CAAC,CAAC,SAAS,IAAI,GAAG;QAAE,WAAW,EAAE,kBAAkB,GAAG,wBAAwB,CAAA;KAAE,GAAG,EAAE,CAAC,CAAC;CAC5F;AAED;;GAEG;AACH,MAAM,WAAW,wBAAwB,CAAC,CAAC,SAAS,OAAO,GAAG,KAAK,CACjE,SAAQ,OAAO,CAAC,CAAC,CAAC;IAClB,aAAa,EAAE;QACb,WAAW,EAAE,YAAY,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC;QAChD,MAAM,EAAE,YAAY,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;QACtC,MAAM,EAAE,YAAY,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QACrC,YAAY,CAAC,EAAE,YAAY,CAAC,KAAK,EAAE,cAAc,CAAC,CAAC;KACpD,CAAC;CACH;AAED,MAAM,MAAM,eAAe,CAAC,CAAC,SAAS,OAAO,EAAE,CAAC,SAAS,OAAO,GAAG,KAAK,IACtE,CAAC,SAAS,IAAI,GAAG,wBAAwB,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;AAE5D;;GAEG;AACH,MAAM,MAAM,2BAA2B,GACnC,aAAa,GACb,QAAQ,GACR,qBAAqB,GACrB,oBAAoB,GACpB,sBAAsB,GACtB,+BAA+B,GAC/B,QAAQ,GACR,cAAc,CAAC;AAEnB;;GAEG;AACH,MAAM,MAAM,iBAAiB,GACzB,MAAM,GACN,OAAO,GACP,QAAQ,GACR,QAAQ,GACR,OAAO,GACP,MAAM,GACN,SAAS,CAAC;AAEd;;GAEG;AACH,MAAM,WAAW,iBAAkB,SAAQ,YAAY;IACrD,OAAO,CAAC,EAAE,2BAA2B,EAAE,CAAC;CACzC;AAED;;GAEG;AACH,MAAM,MAAM,qBAAqB,GAAG,iBAAiB,GAAG;IAAE,EAAE,EAAE,IAAI,GAAG,MAAM,CAAA;CAAE,CAAC;AAE9E,MAAM,WAAW,sBAAuB,SAAQ,iBAAiB;IAC/D,QAAQ,CAAC,EAAE,IAAI,GAAG,MAAM,CAAC;IACzB,GAAG,CAAC,EAAE,IAAI,EAAE,GAAG,MAAM,EAAE,CAAC;IACxB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACzB,MAAM,CAAC,EAAE,YAAY,GAAG,MAAM,CAAC;IAC/B,KAAK,CAAC,EAAE,KAAK,GAAG,CAAC,KAAK,EAAE,KAAK,CAAC,GAAG,MAAM,CAAC;IACxC,KAAK,CAAC,EAAE,IAAI,GAAG,MAAM,CAAC;IACtB,GAAG,CAAC,EAAE,IAAI,GAAG,MAAM,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,mBAAmB,CAAC;IACnC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd,CAAC,KAAK,EAAE,QAAQ,GAAG,MAAM,GAAG,SAAS,CAAC;IAEtC,CAAC,KAAK,EAAE,SAAS,GAAG,MAAM,GAAG,SAAS,CAAC;CACxC;AAED,MAAM,WAAW,uBAAwB,SAAQ,iBAAiB;IAChE,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,IAAI,GAAG,MAAM,CAAC;IACxB,KAAK,EAAE,YAAY,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC9B,KAAK,CAAC,EAAE,KAAK,GAAG,MAAM,CAAC;IACvB,gBAAgB,CAAC,EAAE,gBAAgB,GAAG,IAAI,CAAC;IAC3C,UAAU,CAAC,EAAE,iBAAiB,GAAG,uBAAuB,CAAC;IACzD,WAAW,CAAC,EAAE,kBAAkB,GAAG,wBAAwB,CAAC;IAC5D,QAAQ,CAAC,EAAE,eAAe,GAAG,qBAAqB,CAAC;IACnD,MAAM,CAAC,EAAE,IAAI,EAAE,GAAG,MAAM,EAAE,CAAC;CAC5B;AAED,MAAM,MAAM,uBAAuB,GAAG,iBAAiB,GAAG;IACxD,EAAE,EAAE,IAAI,GAAG,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,KAAK,GAAG,MAAM,CAAC;IACvB,gBAAgB,CAAC,EAAE,gBAAgB,GAAG,IAAI,CAAC;IAC3C,UAAU,CAAC,EAAE,iBAAiB,GAAG,uBAAuB,CAAC;IACzD,WAAW,CAAC,EAAE,kBAAkB,GAAG,wBAAwB,CAAC;IAC5D,QAAQ,CAAC,EAAE,eAAe,GAAG,qBAAqB,CAAC;IACnD,MAAM,CAAC,EAAE,IAAI,EAAE,GAAG,MAAM,EAAE,CAAC;CAC5B,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG,iBAAiB,GAAG;IAAE,EAAE,EAAE,IAAI,GAAG,MAAM,CAAA;CAAE,CAAC;AAC/E,MAAM,MAAM,qBAAqB,GAAG,iBAAiB,GAAG;IAAE,EAAE,EAAE,IAAI,GAAG,MAAM,CAAA;CAAE,CAAC;AAC9E,MAAM,MAAM,wBAAwB,GAAG,iBAAiB,GAAG;IAAE,EAAE,EAAE,IAAI,GAAG,MAAM,CAAA;CAAE,CAAC;AAEjF;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;CACnB;AAED,MAAM,WAAW,uBAAwB,SAAQ,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;CACvE;AAED,MAAM,WAAW,kBAAkB;IACjC,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;CACnB;AAED,MAAM,WAAW,wBAAyB,SAAQ,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;CACxE;AAED,MAAM,WAAW,eAAe;IAC9B,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;CACnB;AAED,MAAM,WAAW,qBAAsB,SAAQ,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;CACrE;AAED;;GAEG;AACH,KAAK,oBAAoB,GACrB,qBAAqB,GACrB,sBAAsB,GACtB,uBAAuB,GACvB,uBAAuB,GACvB,sBAAsB,GACtB,qBAAqB,GACrB,wBAAwB,CAAC;AAE7B;;GAEG;AACH,KAAK,UAAU,CAAC,CAAC,IAAI,CAAC,SAAS;IAAE,OAAO,EAAE,MAAM,CAAC,SAAS,SAAS,2BAA2B,EAAE,CAAA;CAAE,GAAG,CAAC,GAAG,KAAK,CAAC;AAC/G,KAAK,qBAAqB,CAAC,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,SAAS,KAAK,GAAG,KAAK,GAAG,IAAI,CAAC;AAE3E,KAAK,iBAAiB,CAAC,CAAC,IACtB,UAAU,CAAC,CAAC,CAAC,SAAS,MAAM,MAAM,SAAS,2BAA2B,EAAE,GACpE,mBAAmB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,GACrC,KAAK,CAAC;AAEZ;;GAEG;AACH,KAAK,YAAY,CAAC,CAAC,EAAE,EAAE,SAAS,kBAAkB,GAAG,SAAS,IAC5D,EAAE,SAAS;IAAE,MAAM,EAAE,IAAI,CAAA;CAAE,GACvB,CAAC,GACD,EAAE,SAAS;IAAE,MAAM,EAAE,KAAK,CAAA;CAAE,GAC1B,IAAI,CAAC,CAAC,EAAE,YAAY,CAAC,GACrB,IAAI,CAAC,CAAC,EAAE,YAAY,CAAC,CAAC;AAE9B;;GAEG;AACH,KAAK,YAAY,CACf,CAAC,SAAS,iBAAiB,EAC3B,CAAC,SAAS,oBAAoB,EAC9B,EAAE,SAAS,kBAAkB,GAAG,SAAS,EACzC,CAAC,SAAS,OAAO,GAAG,KAAK,IAEzB,CAAC,SAAS,OAAO,GACb,eAAe,CAAC,qBAAqB,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,GAC9C,CAAC,SAAS,MAAM,GAAG,QAAQ,GAAG,QAAQ,GAAG,OAAO,GAAG,MAAM,GAAG,SAAS,GACnE,YAAY,CAAC,eAAe,CAAC,qBAAqB,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,GAC9D,KAAK,CAAC;AAEd;;GAEG;AACH,MAAM,MAAM,gBAAgB,CAC1B,CAAC,SAAS,iBAAiB,EAC3B,CAAC,SAAS,oBAAoB,EAC9B,EAAE,SAAS,kBAAkB,GAAG,SAAS,GAAG,SAAS,EACrD,CAAC,SAAS,OAAO,GAAG,KAAK,IACvB;IACF,IAAI,EAAE,YAAY,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;CACjC,GAAG,CAAC,qBAAqB,CAAC,CAAC,CAAC,SAAS,IAAI,GAAG;IAAE,QAAQ,EAAE,iBAAiB,CAAC,CAAC,CAAC,CAAA;CAAE,GAAG,EAAE,CAAC,GACnF,CAAC,CAAC,SAAS,OAAO,GAAG;IAAE,IAAI,EAAE,OAAO,CAAA;CAAE,GAAG,EAAE,CAAC,CAAC"}
|
|
@@ -1,9 +1,14 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* @fileoverview Type definitions for
|
|
3
|
-
* These types define the structure for marketplace parameters, attributes, and responses.
|
|
2
|
+
* @fileoverview Type definitions for Marketplace in the Sharetribe Marketplace API.
|
|
4
3
|
*/
|
|
5
4
|
import { UUID } from "../sharetribe";
|
|
5
|
+
/**
|
|
6
|
+
* Available endpoints
|
|
7
|
+
*/
|
|
6
8
|
export type MarketplaceEndpoints = "show";
|
|
9
|
+
/**
|
|
10
|
+
* Marketplace resource
|
|
11
|
+
*/
|
|
7
12
|
export interface Marketplace {
|
|
8
13
|
id: UUID;
|
|
9
14
|
type: "marketplace";
|
|
@@ -12,10 +17,15 @@ export interface Marketplace {
|
|
|
12
17
|
description: string;
|
|
13
18
|
};
|
|
14
19
|
}
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
20
|
+
/**
|
|
21
|
+
* Response data per endpoint
|
|
22
|
+
*/
|
|
23
|
+
type ResponseData<E extends MarketplaceEndpoints> = E extends "show" ? Marketplace : never;
|
|
24
|
+
/**
|
|
25
|
+
* Final response type
|
|
26
|
+
*/
|
|
27
|
+
export type MarketplaceResponse<E extends MarketplaceEndpoints = "show"> = {
|
|
28
|
+
data: ResponseData<E>;
|
|
19
29
|
};
|
|
20
30
|
export {};
|
|
21
31
|
//# sourceMappingURL=marketplace.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"marketplace.d.ts","sourceRoot":"","sources":["../../../../src/types/marketplace/marketplace.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"marketplace.d.ts","sourceRoot":"","sources":["../../../../src/types/marketplace/marketplace.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAC,IAAI,EAAC,MAAM,eAAe,CAAC;AAEnC;;GAEG;AACH,MAAM,MAAM,oBAAoB,GAAG,MAAM,CAAC;AAE1C;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,IAAI,CAAC;IACT,IAAI,EAAE,aAAa,CAAC;IACpB,UAAU,EAAE;QACV,IAAI,EAAE,MAAM,CAAC;QACb,WAAW,EAAE,MAAM,CAAC;KACrB,CAAC;CACH;AAED;;GAEG;AACH,KAAK,YAAY,CAAC,CAAC,SAAS,oBAAoB,IAC9C,CAAC,SAAS,MAAM,GAAG,WAAW,GAAG,KAAK,CAAC;AAEzC;;GAEG;AACH,MAAM,MAAM,mBAAmB,CAAC,CAAC,SAAS,oBAAoB,GAAG,MAAM,IAAI;IACzE,IAAI,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC;CACvB,CAAC"}
|
|
@@ -1,10 +1,18 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* @fileoverview Type definitions for
|
|
3
|
-
|
|
2
|
+
* @fileoverview Type definitions for Messages in the Sharetribe Marketplace API.
|
|
3
|
+
*/
|
|
4
|
+
import { ApiMeta, ApiParameter, ExtraParameterType, Relationship, RelationshipTypeMap, UUID } from "../sharetribe";
|
|
5
|
+
/**
|
|
6
|
+
* Available endpoints
|
|
4
7
|
*/
|
|
5
|
-
import { ApiMeta, ApiParameter, ExtraParameter, UUID, Relationship, RelationshipTypeMap, ExtraParameterType } from "../sharetribe";
|
|
6
8
|
export type MessagesEndpoints = "query" | "send";
|
|
9
|
+
/**
|
|
10
|
+
* Relationship fields that can be included
|
|
11
|
+
*/
|
|
7
12
|
export type MessagesRelationshipsFields = "sender" | "sender.profileImage" | "sender.marketplace" | "transaction" | "transaction.marketplace" | "transaction.listing" | "transaction.provider" | "transaction.customer" | "transaction.booking" | "transaction.stockReservation" | "transaction.reviews" | "transaction.messages";
|
|
13
|
+
/**
|
|
14
|
+
* Message resource
|
|
15
|
+
*/
|
|
8
16
|
export interface Message {
|
|
9
17
|
id: UUID;
|
|
10
18
|
type: "message";
|
|
@@ -13,36 +21,66 @@ export interface Message {
|
|
|
13
21
|
createdAt: Date;
|
|
14
22
|
};
|
|
15
23
|
}
|
|
24
|
+
/**
|
|
25
|
+
* With relationships
|
|
26
|
+
*/
|
|
16
27
|
export interface MessageWithRelationships extends Message {
|
|
17
28
|
relationships: {
|
|
18
|
-
sender: Relationship<false, "
|
|
29
|
+
sender: Relationship<false, "sender">;
|
|
19
30
|
transaction: Relationship<false, "transaction">;
|
|
20
31
|
};
|
|
21
32
|
}
|
|
22
|
-
export type
|
|
33
|
+
export type MessageResource<R extends boolean> = R extends true ? MessageWithRelationships : Message;
|
|
34
|
+
/**
|
|
35
|
+
* Base request parameters
|
|
36
|
+
*/
|
|
23
37
|
export interface MessagesParameter extends ApiParameter {
|
|
24
38
|
include?: MessagesRelationshipsFields[];
|
|
25
39
|
}
|
|
40
|
+
/**
|
|
41
|
+
* Query messages
|
|
42
|
+
*/
|
|
26
43
|
export interface MessagesQueryParameter extends MessagesParameter {
|
|
27
44
|
transactionId: UUID | string;
|
|
28
45
|
}
|
|
46
|
+
/**
|
|
47
|
+
* Send a message
|
|
48
|
+
*/
|
|
29
49
|
export interface MessagesSendParameter extends MessagesParameter {
|
|
30
50
|
transactionId: UUID | string;
|
|
31
51
|
content: string;
|
|
32
52
|
}
|
|
53
|
+
/**
|
|
54
|
+
* All parameter types
|
|
55
|
+
*/
|
|
33
56
|
type AllMessagesParameter = MessagesQueryParameter | MessagesSendParameter;
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
57
|
+
/**
|
|
58
|
+
* Include detection — fixes TS2536
|
|
59
|
+
*/
|
|
60
|
+
type HasInclude<P> = P extends {
|
|
61
|
+
include: infer I extends readonly MessagesRelationshipsFields[];
|
|
62
|
+
} ? I : never;
|
|
63
|
+
type IncludesRelationships<P> = HasInclude<P> extends never ? false : true;
|
|
64
|
+
type IncludedResources<P> = HasInclude<P> extends infer Fields extends MessagesRelationshipsFields[] ? RelationshipTypeMap[Fields[number]][] : never;
|
|
65
|
+
/**
|
|
66
|
+
* Expand behavior
|
|
67
|
+
*/
|
|
68
|
+
type ExpandResult<T, EP extends ExtraParameterType | undefined> = EP extends {
|
|
37
69
|
expand: true;
|
|
38
|
-
} ?
|
|
70
|
+
} ? T : EP extends {
|
|
39
71
|
expand: false;
|
|
40
|
-
} ? Omit<
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
72
|
+
} ? Omit<T, "attributes"> : Omit<T, "attributes">;
|
|
73
|
+
/**
|
|
74
|
+
* Response data per endpoint
|
|
75
|
+
*/
|
|
76
|
+
type ResponseData<E extends MessagesEndpoints, P extends AllMessagesParameter, EP extends ExtraParameterType | undefined> = E extends "query" ? MessageResource<IncludesRelationships<P>>[] : E extends "send" ? ExpandResult<MessageResource<IncludesRelationships<P>>, EP> : never;
|
|
77
|
+
/**
|
|
78
|
+
* Final response type
|
|
79
|
+
*/
|
|
80
|
+
export type MessagesResponse<E extends MessagesEndpoints, P extends AllMessagesParameter, EP extends ExtraParameterType | undefined = undefined> = {
|
|
81
|
+
data: ResponseData<E, P, EP>;
|
|
82
|
+
} & (IncludesRelationships<P> extends true ? {
|
|
83
|
+
included: IncludedResources<P>;
|
|
46
84
|
} : {}) & (E extends "query" ? {
|
|
47
85
|
meta: ApiMeta;
|
|
48
86
|
} : {});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"messages.d.ts","sourceRoot":"","sources":["../../../../src/types/marketplace/messages.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"messages.d.ts","sourceRoot":"","sources":["../../../../src/types/marketplace/messages.ts"],"names":[],"mappings":"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"}
|