-
Notifications
You must be signed in to change notification settings - Fork 3
/
formatOutputRaw.go
executable file
·99 lines (85 loc) · 3.2 KB
/
formatOutputRaw.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
package search
type root struct {
Data rootData `json:"data"`
}
type rootData struct {
Presentation rootdataPresentation `json:"presentation"`
}
type rootdataPresentation struct {
StaysSearch rootdatapresentationStaysSearch `json:"staysSearch"`
}
type rootdatapresentationStaysSearch struct {
Results rootdatapresentationstayssearchResults `json:"results"`
}
type rootdatapresentationstayssearchResults struct {
PaginationInfo paginationInfo `json:"paginationInfo"`
Results []resultData `json:"searchResults"`
}
type paginationInfo struct {
PageCursors []string `json:"pageCursors"`
PreviousPageCursor string `json:"previousPageCursor"`
NextPageCursor string `json:"nextPageCursor"`
}
type resultData struct {
Listing listingData `json:"listing"`
PricingQuote pricingWrapper1 `json:"pricingQuote"`
}
type pricingWrapper1 struct {
StructuredStayDisplayPrice pricingWrapper2 `json:"structuredStayDisplayPrice"`
}
type pricingWrapper2 struct {
PrimaryLine priceData `json:"primaryLine"`
SecondaryLine priceData `json:"secondaryLine"`
ExplanationData priceDetails `json:"explanationData"`
}
type listingData struct {
AvgRatingA11yLabel string `json:"avgRatingA11yLabel"`
AvgRatingLocalized string `json:"avgRatingLocalized"`
City string `json:"city"`
ContextualPictures []pricture `json:"contextualPictures"`
Coordinate coordinate `json:"coordinate"`
FormattedBadges []formatedbadgeWrapper1 `json:"formattedBadges"`
Id int64 `json:"id,string"`
ListingObjType string `json:"listingObjType"`
LocalizedCityName string `json:"localizedCityName"`
Name string `json:"name"`
PdpUrlType string `json:"pdpUrlType"`
RoomTypeCategory string `json:"roomTypeCategory"`
TierId int `json:"tierId"`
Title string `json:"title"`
TitleLocale string `json:"titleLocale"`
}
type pricture struct {
Picture string `json:"picture"`
}
type coordinate struct {
Latitude float64 `json:"latitude"`
Longitude float64 `json:"longitude"`
}
type formatedbadgeWrapper1 struct {
LoggingContext formatedbadgeWrapper2 `json:"loggingContext"`
}
type formatedbadgeWrapper2 struct {
BadgeType string `json:"badgeType"`
}
type priceData struct {
DisplayComponentType string `json:"displayComponentType"`
AccessibilityLabel string `json:"accessibilityLabel"`
Price string `json:"price"`
OriginalPrice string `json:"originalPrice"`
DiscountedPrice string `json:"discountedPrice"`
Qualifier string `json:"qualifier"`
ShortQualifier string `json:"shortQualifier"`
ConcatQualifierLeft bool `json:"concatQualifierLeft"`
}
type priceDetails struct {
PriceDetails []items `json:"priceDetails"`
}
type items struct {
Items []itemData `json:"items"`
}
type itemData struct {
DisplayComponentType string `json:"displayComponentType"`
Description string `json:"description"`
PriceString string `json:"priceString"`
}