1// Copyright 2021 Google LLC 2// 3// Licensed under the Apache License, Version 2.0 (the "License"); 4// you may not use this file except in compliance with the License. 5// You may obtain a copy of the License at 6// 7// http://www.apache.org/licenses/LICENSE-2.0 8// 9// Unless required by applicable law or agreed to in writing, software 10// distributed under the License is distributed on an "AS IS" BASIS, 11// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12// See the License for the specific language governing permissions and 13// limitations under the License. 14 15// Code generated by protoc-gen-go. DO NOT EDIT. 16// versions: 17// protoc-gen-go v1.26.0 18// protoc v3.12.2 19// source: google/cloud/retail/v2/common.proto 20 21package retail 22 23import ( 24 reflect "reflect" 25 sync "sync" 26 27 _ "google.golang.org/genproto/googleapis/api/annotations" 28 protoreflect "google.golang.org/protobuf/reflect/protoreflect" 29 protoimpl "google.golang.org/protobuf/runtime/protoimpl" 30 timestamppb "google.golang.org/protobuf/types/known/timestamppb" 31) 32 33const ( 34 // Verify that this generated code is sufficiently up-to-date. 35 _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) 36 // Verify that runtime/protoimpl is sufficiently up-to-date. 37 _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) 38) 39 40// An intended audience of the [Product][google.cloud.retail.v2.Product] for 41// whom it's sold. 42type Audience struct { 43 state protoimpl.MessageState 44 sizeCache protoimpl.SizeCache 45 unknownFields protoimpl.UnknownFields 46 47 // The genders of the audience. Strongly encouraged to use the standard 48 // values: "male", "female", "unisex". 49 // 50 // At most 5 values are allowed. Each value must be a UTF-8 encoded string 51 // with a length limit of 128 characters. Otherwise, an INVALID_ARGUMENT error 52 // is returned. 53 // 54 // Google Merchant Center property 55 // [gender](https://support.google.com/merchants/answer/6324479). Schema.org 56 // property 57 // [Product.audience.suggestedGender](https://schema.org/suggestedGender). 58 Genders []string `protobuf:"bytes,1,rep,name=genders,proto3" json:"genders,omitempty"` 59 // The age groups of the audience. Strongly encouraged to use the standard 60 // values: "newborn" (up to 3 months old), "infant" (3–12 months old), 61 // "toddler" (1–5 years old), "kids" (5–13 years old), "adult" (typically 62 // teens or older). 63 // 64 // At most 5 values are allowed. Each value must be a UTF-8 encoded string 65 // with a length limit of 128 characters. Otherwise, an INVALID_ARGUMENT error 66 // is returned. 67 // 68 // Google Merchant Center property 69 // [age_group](https://support.google.com/merchants/answer/6324463). 70 // Schema.org property 71 // [Product.audience.suggestedMinAge](https://schema.org/suggestedMinAge) and 72 // [Product.audience.suggestedMaxAge](https://schema.org/suggestedMaxAge). 73 AgeGroups []string `protobuf:"bytes,2,rep,name=age_groups,json=ageGroups,proto3" json:"age_groups,omitempty"` 74} 75 76func (x *Audience) Reset() { 77 *x = Audience{} 78 if protoimpl.UnsafeEnabled { 79 mi := &file_google_cloud_retail_v2_common_proto_msgTypes[0] 80 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 81 ms.StoreMessageInfo(mi) 82 } 83} 84 85func (x *Audience) String() string { 86 return protoimpl.X.MessageStringOf(x) 87} 88 89func (*Audience) ProtoMessage() {} 90 91func (x *Audience) ProtoReflect() protoreflect.Message { 92 mi := &file_google_cloud_retail_v2_common_proto_msgTypes[0] 93 if protoimpl.UnsafeEnabled && x != nil { 94 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 95 if ms.LoadMessageInfo() == nil { 96 ms.StoreMessageInfo(mi) 97 } 98 return ms 99 } 100 return mi.MessageOf(x) 101} 102 103// Deprecated: Use Audience.ProtoReflect.Descriptor instead. 104func (*Audience) Descriptor() ([]byte, []int) { 105 return file_google_cloud_retail_v2_common_proto_rawDescGZIP(), []int{0} 106} 107 108func (x *Audience) GetGenders() []string { 109 if x != nil { 110 return x.Genders 111 } 112 return nil 113} 114 115func (x *Audience) GetAgeGroups() []string { 116 if x != nil { 117 return x.AgeGroups 118 } 119 return nil 120} 121 122// The color information of a [Product][google.cloud.retail.v2.Product]. 123type ColorInfo struct { 124 state protoimpl.MessageState 125 sizeCache protoimpl.SizeCache 126 unknownFields protoimpl.UnknownFields 127 128 // The standard color families. Strongly recommended to use the following 129 // standard color groups: "Red", "Pink", "Orange", "Yellow", "Purple", 130 // "Green", "Cyan", "Blue", "Brown", "White", "Gray", "Black" and 131 // "Mixed". Normally it is expected to have only 1 color family. May consider 132 // using single "Mixed" instead of multiple values. 133 // 134 // A maximum of 5 values are allowed. Each value must be a UTF-8 encoded 135 // string with a length limit of 128 characters. Otherwise, an 136 // INVALID_ARGUMENT error is returned. 137 // 138 // Google Merchant Center property 139 // [color](https://support.google.com/merchants/answer/6324487). Schema.org 140 // property [Product.color](https://schema.org/color). 141 ColorFamilies []string `protobuf:"bytes,1,rep,name=color_families,json=colorFamilies,proto3" json:"color_families,omitempty"` 142 // The color display names, which may be different from standard color family 143 // names, such as the color aliases used in the website frontend. Normally 144 // it is expected to have only 1 color. May consider using single "Mixed" 145 // instead of multiple values. 146 // 147 // A maximum of 5 colors are allowed. Each value must be a UTF-8 encoded 148 // string with a length limit of 128 characters. Otherwise, an 149 // INVALID_ARGUMENT error is returned. 150 // 151 // Google Merchant Center property 152 // [color](https://support.google.com/merchants/answer/6324487). Schema.org 153 // property [Product.color](https://schema.org/color). 154 Colors []string `protobuf:"bytes,2,rep,name=colors,proto3" json:"colors,omitempty"` 155} 156 157func (x *ColorInfo) Reset() { 158 *x = ColorInfo{} 159 if protoimpl.UnsafeEnabled { 160 mi := &file_google_cloud_retail_v2_common_proto_msgTypes[1] 161 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 162 ms.StoreMessageInfo(mi) 163 } 164} 165 166func (x *ColorInfo) String() string { 167 return protoimpl.X.MessageStringOf(x) 168} 169 170func (*ColorInfo) ProtoMessage() {} 171 172func (x *ColorInfo) ProtoReflect() protoreflect.Message { 173 mi := &file_google_cloud_retail_v2_common_proto_msgTypes[1] 174 if protoimpl.UnsafeEnabled && x != nil { 175 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 176 if ms.LoadMessageInfo() == nil { 177 ms.StoreMessageInfo(mi) 178 } 179 return ms 180 } 181 return mi.MessageOf(x) 182} 183 184// Deprecated: Use ColorInfo.ProtoReflect.Descriptor instead. 185func (*ColorInfo) Descriptor() ([]byte, []int) { 186 return file_google_cloud_retail_v2_common_proto_rawDescGZIP(), []int{1} 187} 188 189func (x *ColorInfo) GetColorFamilies() []string { 190 if x != nil { 191 return x.ColorFamilies 192 } 193 return nil 194} 195 196func (x *ColorInfo) GetColors() []string { 197 if x != nil { 198 return x.Colors 199 } 200 return nil 201} 202 203// A custom attribute that is not explicitly modeled in 204// [Product][google.cloud.retail.v2.Product]. 205type CustomAttribute struct { 206 state protoimpl.MessageState 207 sizeCache protoimpl.SizeCache 208 unknownFields protoimpl.UnknownFields 209 210 // The textual values of this custom attribute. For example, `["yellow", 211 // "green"]` when the key is "color". 212 // 213 // At most 400 values are allowed. Empty values are not allowed. Each value 214 // must be a UTF-8 encoded string with a length limit of 256 characters. 215 // Otherwise, an INVALID_ARGUMENT error is returned. 216 // 217 // Exactly one of [text][google.cloud.retail.v2.CustomAttribute.text] or 218 // [numbers][google.cloud.retail.v2.CustomAttribute.numbers] should be set. 219 // Otherwise, an INVALID_ARGUMENT error is returned. 220 Text []string `protobuf:"bytes,1,rep,name=text,proto3" json:"text,omitempty"` 221 // The numerical values of this custom attribute. For example, `[2.3, 15.4]` 222 // when the key is "lengths_cm". 223 // 224 // At most 400 values are allowed.Otherwise, an INVALID_ARGUMENT error is 225 // returned. 226 // 227 // Exactly one of [text][google.cloud.retail.v2.CustomAttribute.text] or 228 // [numbers][google.cloud.retail.v2.CustomAttribute.numbers] should be set. 229 // Otherwise, an INVALID_ARGUMENT error is returned. 230 Numbers []float64 `protobuf:"fixed64,2,rep,packed,name=numbers,proto3" json:"numbers,omitempty"` 231 // If true, custom attribute values are searchable by text queries in 232 // [SearchService.Search][google.cloud.retail.v2.SearchService.Search]. 233 // 234 // This field is ignored in a [UserEvent][google.cloud.retail.v2.UserEvent]. 235 // 236 // Only set if type [text][google.cloud.retail.v2.CustomAttribute.text] is 237 // set. Otherwise, a INVALID_ARGUMENT error is returned. 238 Searchable *bool `protobuf:"varint,3,opt,name=searchable,proto3,oneof" json:"searchable,omitempty"` 239 // If true, custom attribute values are indexed, so that it can be filtered, 240 // faceted or boosted in 241 // [SearchService.Search][google.cloud.retail.v2.SearchService.Search]. 242 // 243 // This field is ignored in a [UserEvent][google.cloud.retail.v2.UserEvent]. 244 // 245 // See [SearchRequest.filter][google.cloud.retail.v2.SearchRequest.filter], 246 // [SearchRequest.facet_specs][google.cloud.retail.v2.SearchRequest.facet_specs] 247 // and 248 // [SearchRequest.boost_spec][google.cloud.retail.v2.SearchRequest.boost_spec] 249 // for more details. 250 Indexable *bool `protobuf:"varint,4,opt,name=indexable,proto3,oneof" json:"indexable,omitempty"` 251} 252 253func (x *CustomAttribute) Reset() { 254 *x = CustomAttribute{} 255 if protoimpl.UnsafeEnabled { 256 mi := &file_google_cloud_retail_v2_common_proto_msgTypes[2] 257 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 258 ms.StoreMessageInfo(mi) 259 } 260} 261 262func (x *CustomAttribute) String() string { 263 return protoimpl.X.MessageStringOf(x) 264} 265 266func (*CustomAttribute) ProtoMessage() {} 267 268func (x *CustomAttribute) ProtoReflect() protoreflect.Message { 269 mi := &file_google_cloud_retail_v2_common_proto_msgTypes[2] 270 if protoimpl.UnsafeEnabled && x != nil { 271 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 272 if ms.LoadMessageInfo() == nil { 273 ms.StoreMessageInfo(mi) 274 } 275 return ms 276 } 277 return mi.MessageOf(x) 278} 279 280// Deprecated: Use CustomAttribute.ProtoReflect.Descriptor instead. 281func (*CustomAttribute) Descriptor() ([]byte, []int) { 282 return file_google_cloud_retail_v2_common_proto_rawDescGZIP(), []int{2} 283} 284 285func (x *CustomAttribute) GetText() []string { 286 if x != nil { 287 return x.Text 288 } 289 return nil 290} 291 292func (x *CustomAttribute) GetNumbers() []float64 { 293 if x != nil { 294 return x.Numbers 295 } 296 return nil 297} 298 299func (x *CustomAttribute) GetSearchable() bool { 300 if x != nil && x.Searchable != nil { 301 return *x.Searchable 302 } 303 return false 304} 305 306func (x *CustomAttribute) GetIndexable() bool { 307 if x != nil && x.Indexable != nil { 308 return *x.Indexable 309 } 310 return false 311} 312 313// Fulfillment information, such as the store IDs for in-store pickup or region 314// IDs for different shipping methods. 315type FulfillmentInfo struct { 316 state protoimpl.MessageState 317 sizeCache protoimpl.SizeCache 318 unknownFields protoimpl.UnknownFields 319 320 // The fulfillment type, including commonly used types (such as pickup in 321 // store and same day delivery), and custom types. Customers have to map 322 // custom types to their display names before rendering UI. 323 // 324 // Supported values: 325 // 326 // * "pickup-in-store" 327 // * "ship-to-store" 328 // * "same-day-delivery" 329 // * "next-day-delivery" 330 // * "custom-type-1" 331 // * "custom-type-2" 332 // * "custom-type-3" 333 // * "custom-type-4" 334 // * "custom-type-5" 335 // 336 // If this field is set to an invalid value other than these, an 337 // INVALID_ARGUMENT error is returned. 338 Type string `protobuf:"bytes,1,opt,name=type,proto3" json:"type,omitempty"` 339 // The IDs for this [type][google.cloud.retail.v2.FulfillmentInfo.type], such 340 // as the store IDs for 341 // [FulfillmentInfo.type.pickup-in-store][google.cloud.retail.v2.FulfillmentInfo.type] 342 // or the region IDs for 343 // [FulfillmentInfo.type.same-day-delivery][google.cloud.retail.v2.FulfillmentInfo.type]. 344 // 345 // A maximum of 2000 values are allowed. Each value must be a string with a 346 // length limit of 10 characters, matching the pattern [a-zA-Z0-9_-]+, such as 347 // "store1" or "REGION-2". Otherwise, an INVALID_ARGUMENT error is returned. 348 PlaceIds []string `protobuf:"bytes,2,rep,name=place_ids,json=placeIds,proto3" json:"place_ids,omitempty"` 349} 350 351func (x *FulfillmentInfo) Reset() { 352 *x = FulfillmentInfo{} 353 if protoimpl.UnsafeEnabled { 354 mi := &file_google_cloud_retail_v2_common_proto_msgTypes[3] 355 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 356 ms.StoreMessageInfo(mi) 357 } 358} 359 360func (x *FulfillmentInfo) String() string { 361 return protoimpl.X.MessageStringOf(x) 362} 363 364func (*FulfillmentInfo) ProtoMessage() {} 365 366func (x *FulfillmentInfo) ProtoReflect() protoreflect.Message { 367 mi := &file_google_cloud_retail_v2_common_proto_msgTypes[3] 368 if protoimpl.UnsafeEnabled && x != nil { 369 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 370 if ms.LoadMessageInfo() == nil { 371 ms.StoreMessageInfo(mi) 372 } 373 return ms 374 } 375 return mi.MessageOf(x) 376} 377 378// Deprecated: Use FulfillmentInfo.ProtoReflect.Descriptor instead. 379func (*FulfillmentInfo) Descriptor() ([]byte, []int) { 380 return file_google_cloud_retail_v2_common_proto_rawDescGZIP(), []int{3} 381} 382 383func (x *FulfillmentInfo) GetType() string { 384 if x != nil { 385 return x.Type 386 } 387 return "" 388} 389 390func (x *FulfillmentInfo) GetPlaceIds() []string { 391 if x != nil { 392 return x.PlaceIds 393 } 394 return nil 395} 396 397// [Product][google.cloud.retail.v2.Product] thumbnail/detail image. 398type Image struct { 399 state protoimpl.MessageState 400 sizeCache protoimpl.SizeCache 401 unknownFields protoimpl.UnknownFields 402 403 // Required. URI of the image. 404 // 405 // This field must be a valid UTF-8 encoded URI with a length limit of 5,000 406 // characters. Otherwise, an INVALID_ARGUMENT error is returned. 407 // 408 // Google Merchant Center property 409 // [image_link](https://support.google.com/merchants/answer/6324350). 410 // Schema.org property [Product.image](https://schema.org/image). 411 Uri string `protobuf:"bytes,1,opt,name=uri,proto3" json:"uri,omitempty"` 412 // Height of the image in number of pixels. 413 // 414 // This field must be nonnegative. Otherwise, an INVALID_ARGUMENT error is 415 // returned. 416 Height int32 `protobuf:"varint,2,opt,name=height,proto3" json:"height,omitempty"` 417 // Width of the image in number of pixels. 418 // 419 // This field must be nonnegative. Otherwise, an INVALID_ARGUMENT error is 420 // returned. 421 Width int32 `protobuf:"varint,3,opt,name=width,proto3" json:"width,omitempty"` 422} 423 424func (x *Image) Reset() { 425 *x = Image{} 426 if protoimpl.UnsafeEnabled { 427 mi := &file_google_cloud_retail_v2_common_proto_msgTypes[4] 428 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 429 ms.StoreMessageInfo(mi) 430 } 431} 432 433func (x *Image) String() string { 434 return protoimpl.X.MessageStringOf(x) 435} 436 437func (*Image) ProtoMessage() {} 438 439func (x *Image) ProtoReflect() protoreflect.Message { 440 mi := &file_google_cloud_retail_v2_common_proto_msgTypes[4] 441 if protoimpl.UnsafeEnabled && x != nil { 442 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 443 if ms.LoadMessageInfo() == nil { 444 ms.StoreMessageInfo(mi) 445 } 446 return ms 447 } 448 return mi.MessageOf(x) 449} 450 451// Deprecated: Use Image.ProtoReflect.Descriptor instead. 452func (*Image) Descriptor() ([]byte, []int) { 453 return file_google_cloud_retail_v2_common_proto_rawDescGZIP(), []int{4} 454} 455 456func (x *Image) GetUri() string { 457 if x != nil { 458 return x.Uri 459 } 460 return "" 461} 462 463func (x *Image) GetHeight() int32 { 464 if x != nil { 465 return x.Height 466 } 467 return 0 468} 469 470func (x *Image) GetWidth() int32 { 471 if x != nil { 472 return x.Width 473 } 474 return 0 475} 476 477// A floating point interval. 478type Interval struct { 479 state protoimpl.MessageState 480 sizeCache protoimpl.SizeCache 481 unknownFields protoimpl.UnknownFields 482 483 // The lower bound of the interval. If neither of the min fields are set, then 484 // the lower bound is negative infinity. 485 // 486 // This field must be not larger than 487 // [max][google.cloud.retail.v2.Interval.max]. Otherwise, an INVALID_ARGUMENT 488 // error is returned. 489 // 490 // Types that are assignable to Min: 491 // *Interval_Minimum 492 // *Interval_ExclusiveMinimum 493 Min isInterval_Min `protobuf_oneof:"min"` 494 // The upper bound of the interval. If neither of the max fields are set, then 495 // the upper bound is positive infinity. 496 // 497 // This field must be not smaller than 498 // [min][google.cloud.retail.v2.Interval.min]. Otherwise, an INVALID_ARGUMENT 499 // error is returned. 500 // 501 // Types that are assignable to Max: 502 // *Interval_Maximum 503 // *Interval_ExclusiveMaximum 504 Max isInterval_Max `protobuf_oneof:"max"` 505} 506 507func (x *Interval) Reset() { 508 *x = Interval{} 509 if protoimpl.UnsafeEnabled { 510 mi := &file_google_cloud_retail_v2_common_proto_msgTypes[5] 511 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 512 ms.StoreMessageInfo(mi) 513 } 514} 515 516func (x *Interval) String() string { 517 return protoimpl.X.MessageStringOf(x) 518} 519 520func (*Interval) ProtoMessage() {} 521 522func (x *Interval) ProtoReflect() protoreflect.Message { 523 mi := &file_google_cloud_retail_v2_common_proto_msgTypes[5] 524 if protoimpl.UnsafeEnabled && x != nil { 525 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 526 if ms.LoadMessageInfo() == nil { 527 ms.StoreMessageInfo(mi) 528 } 529 return ms 530 } 531 return mi.MessageOf(x) 532} 533 534// Deprecated: Use Interval.ProtoReflect.Descriptor instead. 535func (*Interval) Descriptor() ([]byte, []int) { 536 return file_google_cloud_retail_v2_common_proto_rawDescGZIP(), []int{5} 537} 538 539func (m *Interval) GetMin() isInterval_Min { 540 if m != nil { 541 return m.Min 542 } 543 return nil 544} 545 546func (x *Interval) GetMinimum() float64 { 547 if x, ok := x.GetMin().(*Interval_Minimum); ok { 548 return x.Minimum 549 } 550 return 0 551} 552 553func (x *Interval) GetExclusiveMinimum() float64 { 554 if x, ok := x.GetMin().(*Interval_ExclusiveMinimum); ok { 555 return x.ExclusiveMinimum 556 } 557 return 0 558} 559 560func (m *Interval) GetMax() isInterval_Max { 561 if m != nil { 562 return m.Max 563 } 564 return nil 565} 566 567func (x *Interval) GetMaximum() float64 { 568 if x, ok := x.GetMax().(*Interval_Maximum); ok { 569 return x.Maximum 570 } 571 return 0 572} 573 574func (x *Interval) GetExclusiveMaximum() float64 { 575 if x, ok := x.GetMax().(*Interval_ExclusiveMaximum); ok { 576 return x.ExclusiveMaximum 577 } 578 return 0 579} 580 581type isInterval_Min interface { 582 isInterval_Min() 583} 584 585type Interval_Minimum struct { 586 // Inclusive lower bound. 587 Minimum float64 `protobuf:"fixed64,1,opt,name=minimum,proto3,oneof"` 588} 589 590type Interval_ExclusiveMinimum struct { 591 // Exclusive lower bound. 592 ExclusiveMinimum float64 `protobuf:"fixed64,2,opt,name=exclusive_minimum,json=exclusiveMinimum,proto3,oneof"` 593} 594 595func (*Interval_Minimum) isInterval_Min() {} 596 597func (*Interval_ExclusiveMinimum) isInterval_Min() {} 598 599type isInterval_Max interface { 600 isInterval_Max() 601} 602 603type Interval_Maximum struct { 604 // Inclusive upper bound. 605 Maximum float64 `protobuf:"fixed64,3,opt,name=maximum,proto3,oneof"` 606} 607 608type Interval_ExclusiveMaximum struct { 609 // Exclusive upper bound. 610 ExclusiveMaximum float64 `protobuf:"fixed64,4,opt,name=exclusive_maximum,json=exclusiveMaximum,proto3,oneof"` 611} 612 613func (*Interval_Maximum) isInterval_Max() {} 614 615func (*Interval_ExclusiveMaximum) isInterval_Max() {} 616 617// The price information of a [Product][google.cloud.retail.v2.Product]. 618type PriceInfo struct { 619 state protoimpl.MessageState 620 sizeCache protoimpl.SizeCache 621 unknownFields protoimpl.UnknownFields 622 623 // The 3-letter currency code defined in [ISO 624 // 4217](https://www.iso.org/iso-4217-currency-codes.html). 625 // 626 // If this field is an unrecognizable currency code, an INVALID_ARGUMENT 627 // error is returned. 628 // 629 // The [Product.Type.VARIANT][google.cloud.retail.v2.Product.Type.VARIANT] 630 // [Product][google.cloud.retail.v2.Product]s with the same 631 // [Product.primary_product_id][google.cloud.retail.v2.Product.primary_product_id] 632 // must share the same 633 // [currency_code][google.cloud.retail.v2.PriceInfo.currency_code]. Otherwise, 634 // a FAILED_PRECONDITION error is returned. 635 CurrencyCode string `protobuf:"bytes,1,opt,name=currency_code,json=currencyCode,proto3" json:"currency_code,omitempty"` 636 // Price of the product. 637 // 638 // Google Merchant Center property 639 // [price](https://support.google.com/merchants/answer/6324371). Schema.org 640 // property [Offer.priceSpecification](https://schema.org/priceSpecification). 641 Price float32 `protobuf:"fixed32,2,opt,name=price,proto3" json:"price,omitempty"` 642 // Price of the product without any discount. If zero, by default set to be 643 // the [price][google.cloud.retail.v2.PriceInfo.price]. 644 OriginalPrice float32 `protobuf:"fixed32,3,opt,name=original_price,json=originalPrice,proto3" json:"original_price,omitempty"` 645 // The costs associated with the sale of a particular product. Used for gross 646 // profit reporting. 647 // 648 // * Profit = [price][google.cloud.retail.v2.PriceInfo.price] - 649 // [cost][google.cloud.retail.v2.PriceInfo.cost] 650 // 651 // Google Merchant Center property 652 // [cost_of_goods_sold](https://support.google.com/merchants/answer/9017895). 653 Cost float32 `protobuf:"fixed32,4,opt,name=cost,proto3" json:"cost,omitempty"` 654 // The timestamp when the [price][google.cloud.retail.v2.PriceInfo.price] 655 // starts to be effective. This can be set as a future timestamp, and the 656 // [price][google.cloud.retail.v2.PriceInfo.price] is only used for search 657 // after 658 // [price_effective_time][google.cloud.retail.v2.PriceInfo.price_effective_time]. 659 // If so, the 660 // [original_price][google.cloud.retail.v2.PriceInfo.original_price] must be 661 // set and [original_price][google.cloud.retail.v2.PriceInfo.original_price] 662 // is used before 663 // [price_effective_time][google.cloud.retail.v2.PriceInfo.price_effective_time]. 664 // 665 // Do not set if [price][google.cloud.retail.v2.PriceInfo.price] is always 666 // effective because it will cause additional latency during search. 667 PriceEffectiveTime *timestamppb.Timestamp `protobuf:"bytes,5,opt,name=price_effective_time,json=priceEffectiveTime,proto3" json:"price_effective_time,omitempty"` 668 // The timestamp when the [price][google.cloud.retail.v2.PriceInfo.price] 669 // stops to be effective. The [price][google.cloud.retail.v2.PriceInfo.price] 670 // is used for search before 671 // [price_expire_time][google.cloud.retail.v2.PriceInfo.price_expire_time]. If 672 // this field is set, the 673 // [original_price][google.cloud.retail.v2.PriceInfo.original_price] must be 674 // set and [original_price][google.cloud.retail.v2.PriceInfo.original_price] 675 // is used after 676 // [price_expire_time][google.cloud.retail.v2.PriceInfo.price_expire_time]. 677 // 678 // Do not set if [price][google.cloud.retail.v2.PriceInfo.price] is always 679 // effective because it will cause additional latency during search. 680 PriceExpireTime *timestamppb.Timestamp `protobuf:"bytes,6,opt,name=price_expire_time,json=priceExpireTime,proto3" json:"price_expire_time,omitempty"` 681 // Output only. The price range of all the child 682 // [Product.Type.VARIANT][google.cloud.retail.v2.Product.Type.VARIANT] 683 // [Product][google.cloud.retail.v2.Product]s grouped together on the 684 // [Product.Type.PRIMARY][google.cloud.retail.v2.Product.Type.PRIMARY] 685 // [Product][google.cloud.retail.v2.Product]. Only populated for 686 // [Product.Type.PRIMARY][google.cloud.retail.v2.Product.Type.PRIMARY] 687 // [Product][google.cloud.retail.v2.Product]s. 688 // 689 // Note: This field is OUTPUT_ONLY for 690 // [ProductService.GetProduct][google.cloud.retail.v2.ProductService.GetProduct]. 691 // Do not set this field in API requests. 692 PriceRange *PriceInfo_PriceRange `protobuf:"bytes,7,opt,name=price_range,json=priceRange,proto3" json:"price_range,omitempty"` 693} 694 695func (x *PriceInfo) Reset() { 696 *x = PriceInfo{} 697 if protoimpl.UnsafeEnabled { 698 mi := &file_google_cloud_retail_v2_common_proto_msgTypes[6] 699 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 700 ms.StoreMessageInfo(mi) 701 } 702} 703 704func (x *PriceInfo) String() string { 705 return protoimpl.X.MessageStringOf(x) 706} 707 708func (*PriceInfo) ProtoMessage() {} 709 710func (x *PriceInfo) ProtoReflect() protoreflect.Message { 711 mi := &file_google_cloud_retail_v2_common_proto_msgTypes[6] 712 if protoimpl.UnsafeEnabled && x != nil { 713 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 714 if ms.LoadMessageInfo() == nil { 715 ms.StoreMessageInfo(mi) 716 } 717 return ms 718 } 719 return mi.MessageOf(x) 720} 721 722// Deprecated: Use PriceInfo.ProtoReflect.Descriptor instead. 723func (*PriceInfo) Descriptor() ([]byte, []int) { 724 return file_google_cloud_retail_v2_common_proto_rawDescGZIP(), []int{6} 725} 726 727func (x *PriceInfo) GetCurrencyCode() string { 728 if x != nil { 729 return x.CurrencyCode 730 } 731 return "" 732} 733 734func (x *PriceInfo) GetPrice() float32 { 735 if x != nil { 736 return x.Price 737 } 738 return 0 739} 740 741func (x *PriceInfo) GetOriginalPrice() float32 { 742 if x != nil { 743 return x.OriginalPrice 744 } 745 return 0 746} 747 748func (x *PriceInfo) GetCost() float32 { 749 if x != nil { 750 return x.Cost 751 } 752 return 0 753} 754 755func (x *PriceInfo) GetPriceEffectiveTime() *timestamppb.Timestamp { 756 if x != nil { 757 return x.PriceEffectiveTime 758 } 759 return nil 760} 761 762func (x *PriceInfo) GetPriceExpireTime() *timestamppb.Timestamp { 763 if x != nil { 764 return x.PriceExpireTime 765 } 766 return nil 767} 768 769func (x *PriceInfo) GetPriceRange() *PriceInfo_PriceRange { 770 if x != nil { 771 return x.PriceRange 772 } 773 return nil 774} 775 776// The rating of a [Product][google.cloud.retail.v2.Product]. 777type Rating struct { 778 state protoimpl.MessageState 779 sizeCache protoimpl.SizeCache 780 unknownFields protoimpl.UnknownFields 781 782 // The total number of ratings. This value is independent of the value of 783 // [rating_histogram][google.cloud.retail.v2.Rating.rating_histogram]. 784 // 785 // This value must be nonnegative. Otherwise, an INVALID_ARGUMENT error is 786 // returned. 787 RatingCount int32 `protobuf:"varint,1,opt,name=rating_count,json=ratingCount,proto3" json:"rating_count,omitempty"` 788 // The average rating of the [Product][google.cloud.retail.v2.Product]. 789 // 790 // The rating is scaled at 1-5. Otherwise, an INVALID_ARGUMENT error is 791 // returned. 792 AverageRating float32 `protobuf:"fixed32,2,opt,name=average_rating,json=averageRating,proto3" json:"average_rating,omitempty"` 793 // List of rating counts per rating value (index = rating - 1). The list is 794 // empty if there is no rating. If the list is non-empty, its size is 795 // always 5. Otherwise, an INVALID_ARGUMENT error is returned. 796 // 797 // For example, [41, 14, 13, 47, 303]. It means that the 798 // [Product][google.cloud.retail.v2.Product] got 41 ratings with 1 star, 14 799 // ratings with 2 star, and so on. 800 RatingHistogram []int32 `protobuf:"varint,3,rep,packed,name=rating_histogram,json=ratingHistogram,proto3" json:"rating_histogram,omitempty"` 801} 802 803func (x *Rating) Reset() { 804 *x = Rating{} 805 if protoimpl.UnsafeEnabled { 806 mi := &file_google_cloud_retail_v2_common_proto_msgTypes[7] 807 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 808 ms.StoreMessageInfo(mi) 809 } 810} 811 812func (x *Rating) String() string { 813 return protoimpl.X.MessageStringOf(x) 814} 815 816func (*Rating) ProtoMessage() {} 817 818func (x *Rating) ProtoReflect() protoreflect.Message { 819 mi := &file_google_cloud_retail_v2_common_proto_msgTypes[7] 820 if protoimpl.UnsafeEnabled && x != nil { 821 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 822 if ms.LoadMessageInfo() == nil { 823 ms.StoreMessageInfo(mi) 824 } 825 return ms 826 } 827 return mi.MessageOf(x) 828} 829 830// Deprecated: Use Rating.ProtoReflect.Descriptor instead. 831func (*Rating) Descriptor() ([]byte, []int) { 832 return file_google_cloud_retail_v2_common_proto_rawDescGZIP(), []int{7} 833} 834 835func (x *Rating) GetRatingCount() int32 { 836 if x != nil { 837 return x.RatingCount 838 } 839 return 0 840} 841 842func (x *Rating) GetAverageRating() float32 { 843 if x != nil { 844 return x.AverageRating 845 } 846 return 0 847} 848 849func (x *Rating) GetRatingHistogram() []int32 { 850 if x != nil { 851 return x.RatingHistogram 852 } 853 return nil 854} 855 856// Information of an end user. 857type UserInfo struct { 858 state protoimpl.MessageState 859 sizeCache protoimpl.SizeCache 860 unknownFields protoimpl.UnknownFields 861 862 // Highly recommended for logged-in users. Unique identifier for logged-in 863 // user, such as a user name. 864 // 865 // The field must be a UTF-8 encoded string with a length limit of 128 866 // characters. Otherwise, an INVALID_ARGUMENT error is returned. 867 UserId string `protobuf:"bytes,1,opt,name=user_id,json=userId,proto3" json:"user_id,omitempty"` 868 // The end user's IP address. Required for getting 869 // [SearchResponse.sponsored_results][google.cloud.retail.v2.SearchResponse.sponsored_results]. 870 // This field is used to extract location information for personalization. 871 // 872 // This field must be either an IPv4 address (e.g. "104.133.9.80") or an IPv6 873 // address (e.g. "2001:0db8:85a3:0000:0000:8a2e:0370:7334"). Otherwise, an 874 // INVALID_ARGUMENT error is returned. 875 // 876 // This should not be set when using the JavaScript tag in 877 // [UserEventService.CollectUserEvent][google.cloud.retail.v2.UserEventService.CollectUserEvent] 878 // or if 879 // [direct_user_request][google.cloud.retail.v2.UserInfo.direct_user_request] 880 // is set. 881 IpAddress string `protobuf:"bytes,2,opt,name=ip_address,json=ipAddress,proto3" json:"ip_address,omitempty"` 882 // User agent as included in the HTTP header. Required for getting 883 // [SearchResponse.sponsored_results][google.cloud.retail.v2.SearchResponse.sponsored_results]. 884 // 885 // The field must be a UTF-8 encoded string with a length limit of 1,000 886 // characters. Otherwise, an INVALID_ARGUMENT error is returned. 887 // 888 // This should not be set when using the client side event reporting with 889 // GTM or JavaScript tag in 890 // [UserEventService.CollectUserEvent][google.cloud.retail.v2.UserEventService.CollectUserEvent] 891 // or if 892 // [direct_user_request][google.cloud.retail.v2.UserInfo.direct_user_request] 893 // is set. 894 UserAgent string `protobuf:"bytes,3,opt,name=user_agent,json=userAgent,proto3" json:"user_agent,omitempty"` 895 // True if the request is made directly from the end user, in which case the 896 // [ip_address][google.cloud.retail.v2.UserInfo.ip_address] and 897 // [user_agent][google.cloud.retail.v2.UserInfo.user_agent] can be populated 898 // from the HTTP request. This flag should be set only if the API request is 899 // made directly from the end user such as a mobile app (and not if a gateway 900 // or a server is processing and pushing the user events). 901 // 902 // This should not be set when using the JavaScript tag in 903 // [UserEventService.CollectUserEvent][google.cloud.retail.v2.UserEventService.CollectUserEvent]. 904 DirectUserRequest bool `protobuf:"varint,4,opt,name=direct_user_request,json=directUserRequest,proto3" json:"direct_user_request,omitempty"` 905} 906 907func (x *UserInfo) Reset() { 908 *x = UserInfo{} 909 if protoimpl.UnsafeEnabled { 910 mi := &file_google_cloud_retail_v2_common_proto_msgTypes[8] 911 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 912 ms.StoreMessageInfo(mi) 913 } 914} 915 916func (x *UserInfo) String() string { 917 return protoimpl.X.MessageStringOf(x) 918} 919 920func (*UserInfo) ProtoMessage() {} 921 922func (x *UserInfo) ProtoReflect() protoreflect.Message { 923 mi := &file_google_cloud_retail_v2_common_proto_msgTypes[8] 924 if protoimpl.UnsafeEnabled && x != nil { 925 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 926 if ms.LoadMessageInfo() == nil { 927 ms.StoreMessageInfo(mi) 928 } 929 return ms 930 } 931 return mi.MessageOf(x) 932} 933 934// Deprecated: Use UserInfo.ProtoReflect.Descriptor instead. 935func (*UserInfo) Descriptor() ([]byte, []int) { 936 return file_google_cloud_retail_v2_common_proto_rawDescGZIP(), []int{8} 937} 938 939func (x *UserInfo) GetUserId() string { 940 if x != nil { 941 return x.UserId 942 } 943 return "" 944} 945 946func (x *UserInfo) GetIpAddress() string { 947 if x != nil { 948 return x.IpAddress 949 } 950 return "" 951} 952 953func (x *UserInfo) GetUserAgent() string { 954 if x != nil { 955 return x.UserAgent 956 } 957 return "" 958} 959 960func (x *UserInfo) GetDirectUserRequest() bool { 961 if x != nil { 962 return x.DirectUserRequest 963 } 964 return false 965} 966 967// Promotion information. 968type Promotion struct { 969 state protoimpl.MessageState 970 sizeCache protoimpl.SizeCache 971 unknownFields protoimpl.UnknownFields 972 973 // ID of the promotion. For example, "free gift". 974 // 975 // The value value must be a UTF-8 encoded string with a length limit of 128 976 // characters, and match the pattern: [a-zA-Z][a-zA-Z0-9_]*. For example, 977 // id0LikeThis or ID_1_LIKE_THIS. Otherwise, an INVALID_ARGUMENT error is 978 // returned. 979 // 980 // Google Merchant Center property 981 // [promotion](https://support.google.com/merchants/answer/7050148). 982 PromotionId string `protobuf:"bytes,1,opt,name=promotion_id,json=promotionId,proto3" json:"promotion_id,omitempty"` 983} 984 985func (x *Promotion) Reset() { 986 *x = Promotion{} 987 if protoimpl.UnsafeEnabled { 988 mi := &file_google_cloud_retail_v2_common_proto_msgTypes[9] 989 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 990 ms.StoreMessageInfo(mi) 991 } 992} 993 994func (x *Promotion) String() string { 995 return protoimpl.X.MessageStringOf(x) 996} 997 998func (*Promotion) ProtoMessage() {} 999 1000func (x *Promotion) ProtoReflect() protoreflect.Message { 1001 mi := &file_google_cloud_retail_v2_common_proto_msgTypes[9] 1002 if protoimpl.UnsafeEnabled && x != nil { 1003 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1004 if ms.LoadMessageInfo() == nil { 1005 ms.StoreMessageInfo(mi) 1006 } 1007 return ms 1008 } 1009 return mi.MessageOf(x) 1010} 1011 1012// Deprecated: Use Promotion.ProtoReflect.Descriptor instead. 1013func (*Promotion) Descriptor() ([]byte, []int) { 1014 return file_google_cloud_retail_v2_common_proto_rawDescGZIP(), []int{9} 1015} 1016 1017func (x *Promotion) GetPromotionId() string { 1018 if x != nil { 1019 return x.PromotionId 1020 } 1021 return "" 1022} 1023 1024// The price range of all 1025// [variant][google.cloud.retail.v2.Product.Type.VARIANT] 1026// [Product][google.cloud.retail.v2.Product] having the same 1027// [Product.primary_product_id][google.cloud.retail.v2.Product.primary_product_id]. 1028type PriceInfo_PriceRange struct { 1029 state protoimpl.MessageState 1030 sizeCache protoimpl.SizeCache 1031 unknownFields protoimpl.UnknownFields 1032 1033 // The inclusive 1034 // [Product.pricing_info.price][google.cloud.retail.v2.PriceInfo.price] 1035 // interval of all [variant][google.cloud.retail.v2.Product.Type.VARIANT] 1036 // [Product][google.cloud.retail.v2.Product] having the same 1037 // [Product.primary_product_id][google.cloud.retail.v2.Product.primary_product_id]. 1038 Price *Interval `protobuf:"bytes,1,opt,name=price,proto3" json:"price,omitempty"` 1039 // The inclusive 1040 // [Product.pricing_info.original_price][google.cloud.retail.v2.PriceInfo.original_price] 1041 // internal of all [variant][google.cloud.retail.v2.Product.Type.VARIANT] 1042 // [Product][google.cloud.retail.v2.Product] having the same 1043 // [Product.primary_product_id][google.cloud.retail.v2.Product.primary_product_id]. 1044 OriginalPrice *Interval `protobuf:"bytes,2,opt,name=original_price,json=originalPrice,proto3" json:"original_price,omitempty"` 1045} 1046 1047func (x *PriceInfo_PriceRange) Reset() { 1048 *x = PriceInfo_PriceRange{} 1049 if protoimpl.UnsafeEnabled { 1050 mi := &file_google_cloud_retail_v2_common_proto_msgTypes[10] 1051 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1052 ms.StoreMessageInfo(mi) 1053 } 1054} 1055 1056func (x *PriceInfo_PriceRange) String() string { 1057 return protoimpl.X.MessageStringOf(x) 1058} 1059 1060func (*PriceInfo_PriceRange) ProtoMessage() {} 1061 1062func (x *PriceInfo_PriceRange) ProtoReflect() protoreflect.Message { 1063 mi := &file_google_cloud_retail_v2_common_proto_msgTypes[10] 1064 if protoimpl.UnsafeEnabled && x != nil { 1065 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1066 if ms.LoadMessageInfo() == nil { 1067 ms.StoreMessageInfo(mi) 1068 } 1069 return ms 1070 } 1071 return mi.MessageOf(x) 1072} 1073 1074// Deprecated: Use PriceInfo_PriceRange.ProtoReflect.Descriptor instead. 1075func (*PriceInfo_PriceRange) Descriptor() ([]byte, []int) { 1076 return file_google_cloud_retail_v2_common_proto_rawDescGZIP(), []int{6, 0} 1077} 1078 1079func (x *PriceInfo_PriceRange) GetPrice() *Interval { 1080 if x != nil { 1081 return x.Price 1082 } 1083 return nil 1084} 1085 1086func (x *PriceInfo_PriceRange) GetOriginalPrice() *Interval { 1087 if x != nil { 1088 return x.OriginalPrice 1089 } 1090 return nil 1091} 1092 1093var File_google_cloud_retail_v2_common_proto protoreflect.FileDescriptor 1094 1095var file_google_cloud_retail_v2_common_proto_rawDesc = []byte{ 1096 0x0a, 0x23, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x72, 1097 0x65, 0x74, 0x61, 0x69, 0x6c, 0x2f, 0x76, 0x32, 0x2f, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 1098 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x16, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 1099 0x6f, 0x75, 0x64, 0x2e, 0x72, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x2e, 0x76, 0x32, 0x1a, 0x1c, 0x67, 1100 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 1101 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1f, 0x67, 0x6f, 0x6f, 1102 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x5f, 0x62, 0x65, 1103 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1f, 0x67, 0x6f, 1104 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x74, 0x69, 1105 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x43, 0x0a, 1106 0x08, 0x41, 0x75, 0x64, 0x69, 0x65, 0x6e, 0x63, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x67, 0x65, 0x6e, 1107 0x64, 0x65, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x07, 0x67, 0x65, 0x6e, 0x64, 1108 0x65, 0x72, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x67, 0x65, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 1109 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x09, 0x61, 0x67, 0x65, 0x47, 0x72, 0x6f, 0x75, 1110 0x70, 0x73, 0x22, 0x4a, 0x0a, 0x09, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x12, 1111 0x25, 0x0a, 0x0e, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x5f, 0x66, 0x61, 0x6d, 0x69, 0x6c, 0x69, 0x65, 1112 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0d, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x46, 0x61, 1113 0x6d, 0x69, 0x6c, 0x69, 0x65, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x73, 1114 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x06, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x73, 0x22, 0xa4, 1115 0x01, 0x0a, 0x0f, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 1116 0x74, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x65, 0x78, 0x74, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 1117 0x52, 0x04, 0x74, 0x65, 0x78, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 1118 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x01, 0x52, 0x07, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x73, 1119 0x12, 0x23, 0x0a, 0x0a, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x03, 1120 0x20, 0x01, 0x28, 0x08, 0x48, 0x00, 0x52, 0x0a, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x61, 0x62, 1121 0x6c, 0x65, 0x88, 0x01, 0x01, 0x12, 0x21, 0x0a, 0x09, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x61, 0x62, 1122 0x6c, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x48, 0x01, 0x52, 0x09, 0x69, 0x6e, 0x64, 0x65, 1123 0x78, 0x61, 0x62, 0x6c, 0x65, 0x88, 0x01, 0x01, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x73, 0x65, 0x61, 1124 0x72, 0x63, 0x68, 0x61, 0x62, 0x6c, 0x65, 0x42, 0x0c, 0x0a, 0x0a, 0x5f, 0x69, 0x6e, 0x64, 0x65, 1125 0x78, 0x61, 0x62, 0x6c, 0x65, 0x22, 0x42, 0x0a, 0x0f, 0x46, 0x75, 0x6c, 0x66, 0x69, 0x6c, 0x6c, 1126 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 1127 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x1b, 0x0a, 0x09, 1128 0x70, 0x6c, 0x61, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 1129 0x08, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x49, 0x64, 0x73, 0x22, 0x4c, 0x0a, 0x05, 0x49, 0x6d, 0x61, 1130 0x67, 0x65, 0x12, 0x15, 0x0a, 0x03, 0x75, 0x72, 0x69, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 1131 0x03, 0xe0, 0x41, 0x02, 0x52, 0x03, 0x75, 0x72, 0x69, 0x12, 0x16, 0x0a, 0x06, 0x68, 0x65, 0x69, 1132 0x67, 0x68, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x68, 0x65, 0x69, 0x67, 0x68, 1133 0x74, 0x12, 0x14, 0x0a, 0x05, 0x77, 0x69, 0x64, 0x74, 0x68, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 1134 0x52, 0x05, 0x77, 0x69, 0x64, 0x74, 0x68, 0x22, 0xae, 0x01, 0x0a, 0x08, 0x49, 0x6e, 0x74, 0x65, 1135 0x72, 0x76, 0x61, 0x6c, 0x12, 0x1a, 0x0a, 0x07, 0x6d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x18, 1136 0x01, 0x20, 0x01, 0x28, 0x01, 0x48, 0x00, 0x52, 0x07, 0x6d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 1137 0x12, 0x2d, 0x0a, 0x11, 0x65, 0x78, 0x63, 0x6c, 0x75, 0x73, 0x69, 0x76, 0x65, 0x5f, 0x6d, 0x69, 1138 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x01, 0x48, 0x00, 0x52, 0x10, 0x65, 1139 0x78, 0x63, 0x6c, 0x75, 0x73, 0x69, 0x76, 0x65, 0x4d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x12, 1140 0x1a, 0x0a, 0x07, 0x6d, 0x61, 0x78, 0x69, 0x6d, 0x75, 0x6d, 0x18, 0x03, 0x20, 0x01, 0x28, 0x01, 1141 0x48, 0x01, 0x52, 0x07, 0x6d, 0x61, 0x78, 0x69, 0x6d, 0x75, 0x6d, 0x12, 0x2d, 0x0a, 0x11, 0x65, 1142 0x78, 0x63, 0x6c, 0x75, 0x73, 0x69, 0x76, 0x65, 0x5f, 0x6d, 0x61, 0x78, 0x69, 0x6d, 0x75, 0x6d, 1143 0x18, 0x04, 0x20, 0x01, 0x28, 0x01, 0x48, 0x01, 0x52, 0x10, 0x65, 0x78, 0x63, 0x6c, 0x75, 0x73, 1144 0x69, 0x76, 0x65, 0x4d, 0x61, 0x78, 0x69, 0x6d, 0x75, 0x6d, 0x42, 0x05, 0x0a, 0x03, 0x6d, 0x69, 1145 0x6e, 0x42, 0x05, 0x0a, 0x03, 0x6d, 0x61, 0x78, 0x22, 0xfb, 0x03, 0x0a, 0x09, 0x50, 0x72, 0x69, 1146 0x63, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 1147 0x63, 0x79, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x63, 1148 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x79, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x70, 1149 0x72, 0x69, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x02, 0x52, 0x05, 0x70, 0x72, 0x69, 0x63, 1150 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x61, 0x6c, 0x5f, 0x70, 0x72, 1151 0x69, 0x63, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0d, 0x6f, 0x72, 0x69, 0x67, 0x69, 1152 0x6e, 0x61, 0x6c, 0x50, 0x72, 0x69, 0x63, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x73, 0x74, 1153 0x18, 0x04, 0x20, 0x01, 0x28, 0x02, 0x52, 0x04, 0x63, 0x6f, 0x73, 0x74, 0x12, 0x4c, 0x0a, 0x14, 1154 0x70, 0x72, 0x69, 0x63, 0x65, 0x5f, 0x65, 0x66, 0x66, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 1155 0x74, 0x69, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 1156 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 1157 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x12, 0x70, 0x72, 0x69, 0x63, 0x65, 0x45, 0x66, 0x66, 1158 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x46, 0x0a, 0x11, 0x70, 0x72, 1159 0x69, 0x63, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 1160 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 1161 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 1162 0x70, 0x52, 0x0f, 0x70, 0x72, 0x69, 0x63, 0x65, 0x45, 0x78, 0x70, 0x69, 0x72, 0x65, 0x54, 0x69, 1163 0x6d, 0x65, 0x12, 0x52, 0x0a, 0x0b, 0x70, 0x72, 0x69, 0x63, 0x65, 0x5f, 0x72, 0x61, 0x6e, 0x67, 1164 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 1165 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x72, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x2e, 0x76, 0x32, 1166 0x2e, 0x50, 0x72, 0x69, 0x63, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x2e, 0x50, 0x72, 0x69, 0x63, 0x65, 1167 0x52, 0x61, 0x6e, 0x67, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0a, 0x70, 0x72, 0x69, 0x63, 1168 0x65, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x1a, 0x8d, 0x01, 0x0a, 0x0a, 0x50, 0x72, 0x69, 0x63, 0x65, 1169 0x52, 0x61, 0x6e, 0x67, 0x65, 0x12, 0x36, 0x0a, 0x05, 0x70, 0x72, 0x69, 0x63, 0x65, 0x18, 0x01, 1170 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 1171 0x6f, 0x75, 0x64, 0x2e, 0x72, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x2e, 0x76, 0x32, 0x2e, 0x49, 0x6e, 1172 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x52, 0x05, 0x70, 0x72, 0x69, 0x63, 0x65, 0x12, 0x47, 0x0a, 1173 0x0e, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x61, 0x6c, 0x5f, 0x70, 0x72, 0x69, 0x63, 0x65, 0x18, 1174 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 1175 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x72, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x2e, 0x76, 0x32, 0x2e, 0x49, 1176 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x52, 0x0d, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x61, 1177 0x6c, 0x50, 0x72, 0x69, 0x63, 0x65, 0x22, 0x7d, 0x0a, 0x06, 0x52, 0x61, 0x74, 0x69, 0x6e, 0x67, 1178 0x12, 0x21, 0x0a, 0x0c, 0x72, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 1179 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x72, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x43, 0x6f, 1180 0x75, 0x6e, 0x74, 0x12, 0x25, 0x0a, 0x0e, 0x61, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x5f, 0x72, 1181 0x61, 0x74, 0x69, 0x6e, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0d, 0x61, 0x76, 0x65, 1182 0x72, 0x61, 0x67, 0x65, 0x52, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x12, 0x29, 0x0a, 0x10, 0x72, 0x61, 1183 0x74, 0x69, 0x6e, 0x67, 0x5f, 0x68, 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x18, 0x03, 1184 0x20, 0x03, 0x28, 0x05, 0x52, 0x0f, 0x72, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x48, 0x69, 0x73, 0x74, 1185 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x22, 0x91, 0x01, 0x0a, 0x08, 0x55, 0x73, 0x65, 0x72, 0x49, 0x6e, 1186 0x66, 0x6f, 0x12, 0x17, 0x0a, 0x07, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 1187 0x01, 0x28, 0x09, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x69, 1188 0x70, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 1189 0x09, 0x69, 0x70, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x75, 0x73, 1190 0x65, 0x72, 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 1191 0x75, 0x73, 0x65, 0x72, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x12, 0x2e, 0x0a, 0x13, 0x64, 0x69, 0x72, 1192 0x65, 0x63, 0x74, 0x5f, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 1193 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x11, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x55, 0x73, 1194 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x2e, 0x0a, 0x09, 0x50, 0x72, 0x6f, 1195 0x6d, 0x6f, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x21, 0x0a, 0x0c, 0x70, 0x72, 0x6f, 0x6d, 0x6f, 0x74, 1196 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x70, 0x72, 1197 0x6f, 0x6d, 0x6f, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x42, 0xc0, 0x01, 0x0a, 0x1a, 0x63, 0x6f, 1198 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x72, 1199 0x65, 0x74, 0x61, 0x69, 0x6c, 0x2e, 0x76, 0x32, 0x42, 0x0b, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 1200 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x3c, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 1201 0x67, 0x6f, 0x6c, 0x61, 0x6e, 0x67, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x67, 0x65, 0x6e, 0x70, 0x72, 1202 0x6f, 0x74, 0x6f, 0x2f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2f, 0x63, 1203 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x72, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x2f, 0x76, 0x32, 0x3b, 0x72, 1204 0x65, 0x74, 0x61, 0x69, 0x6c, 0xa2, 0x02, 0x06, 0x52, 0x45, 0x54, 0x41, 0x49, 0x4c, 0xaa, 0x02, 1205 0x16, 0x47, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x52, 0x65, 1206 0x74, 0x61, 0x69, 0x6c, 0x2e, 0x56, 0x32, 0xca, 0x02, 0x16, 0x47, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 1207 0x5c, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x5c, 0x52, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x5c, 0x56, 0x32, 1208 0xea, 0x02, 0x19, 0x47, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x3a, 0x3a, 0x43, 0x6c, 0x6f, 0x75, 0x64, 1209 0x3a, 0x3a, 0x52, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x3a, 0x3a, 0x56, 0x32, 0x62, 0x06, 0x70, 0x72, 1210 0x6f, 0x74, 0x6f, 0x33, 1211} 1212 1213var ( 1214 file_google_cloud_retail_v2_common_proto_rawDescOnce sync.Once 1215 file_google_cloud_retail_v2_common_proto_rawDescData = file_google_cloud_retail_v2_common_proto_rawDesc 1216) 1217 1218func file_google_cloud_retail_v2_common_proto_rawDescGZIP() []byte { 1219 file_google_cloud_retail_v2_common_proto_rawDescOnce.Do(func() { 1220 file_google_cloud_retail_v2_common_proto_rawDescData = protoimpl.X.CompressGZIP(file_google_cloud_retail_v2_common_proto_rawDescData) 1221 }) 1222 return file_google_cloud_retail_v2_common_proto_rawDescData 1223} 1224 1225var file_google_cloud_retail_v2_common_proto_msgTypes = make([]protoimpl.MessageInfo, 11) 1226var file_google_cloud_retail_v2_common_proto_goTypes = []interface{}{ 1227 (*Audience)(nil), // 0: google.cloud.retail.v2.Audience 1228 (*ColorInfo)(nil), // 1: google.cloud.retail.v2.ColorInfo 1229 (*CustomAttribute)(nil), // 2: google.cloud.retail.v2.CustomAttribute 1230 (*FulfillmentInfo)(nil), // 3: google.cloud.retail.v2.FulfillmentInfo 1231 (*Image)(nil), // 4: google.cloud.retail.v2.Image 1232 (*Interval)(nil), // 5: google.cloud.retail.v2.Interval 1233 (*PriceInfo)(nil), // 6: google.cloud.retail.v2.PriceInfo 1234 (*Rating)(nil), // 7: google.cloud.retail.v2.Rating 1235 (*UserInfo)(nil), // 8: google.cloud.retail.v2.UserInfo 1236 (*Promotion)(nil), // 9: google.cloud.retail.v2.Promotion 1237 (*PriceInfo_PriceRange)(nil), // 10: google.cloud.retail.v2.PriceInfo.PriceRange 1238 (*timestamppb.Timestamp)(nil), // 11: google.protobuf.Timestamp 1239} 1240var file_google_cloud_retail_v2_common_proto_depIdxs = []int32{ 1241 11, // 0: google.cloud.retail.v2.PriceInfo.price_effective_time:type_name -> google.protobuf.Timestamp 1242 11, // 1: google.cloud.retail.v2.PriceInfo.price_expire_time:type_name -> google.protobuf.Timestamp 1243 10, // 2: google.cloud.retail.v2.PriceInfo.price_range:type_name -> google.cloud.retail.v2.PriceInfo.PriceRange 1244 5, // 3: google.cloud.retail.v2.PriceInfo.PriceRange.price:type_name -> google.cloud.retail.v2.Interval 1245 5, // 4: google.cloud.retail.v2.PriceInfo.PriceRange.original_price:type_name -> google.cloud.retail.v2.Interval 1246 5, // [5:5] is the sub-list for method output_type 1247 5, // [5:5] is the sub-list for method input_type 1248 5, // [5:5] is the sub-list for extension type_name 1249 5, // [5:5] is the sub-list for extension extendee 1250 0, // [0:5] is the sub-list for field type_name 1251} 1252 1253func init() { file_google_cloud_retail_v2_common_proto_init() } 1254func file_google_cloud_retail_v2_common_proto_init() { 1255 if File_google_cloud_retail_v2_common_proto != nil { 1256 return 1257 } 1258 if !protoimpl.UnsafeEnabled { 1259 file_google_cloud_retail_v2_common_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { 1260 switch v := v.(*Audience); i { 1261 case 0: 1262 return &v.state 1263 case 1: 1264 return &v.sizeCache 1265 case 2: 1266 return &v.unknownFields 1267 default: 1268 return nil 1269 } 1270 } 1271 file_google_cloud_retail_v2_common_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { 1272 switch v := v.(*ColorInfo); i { 1273 case 0: 1274 return &v.state 1275 case 1: 1276 return &v.sizeCache 1277 case 2: 1278 return &v.unknownFields 1279 default: 1280 return nil 1281 } 1282 } 1283 file_google_cloud_retail_v2_common_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { 1284 switch v := v.(*CustomAttribute); i { 1285 case 0: 1286 return &v.state 1287 case 1: 1288 return &v.sizeCache 1289 case 2: 1290 return &v.unknownFields 1291 default: 1292 return nil 1293 } 1294 } 1295 file_google_cloud_retail_v2_common_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { 1296 switch v := v.(*FulfillmentInfo); i { 1297 case 0: 1298 return &v.state 1299 case 1: 1300 return &v.sizeCache 1301 case 2: 1302 return &v.unknownFields 1303 default: 1304 return nil 1305 } 1306 } 1307 file_google_cloud_retail_v2_common_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { 1308 switch v := v.(*Image); i { 1309 case 0: 1310 return &v.state 1311 case 1: 1312 return &v.sizeCache 1313 case 2: 1314 return &v.unknownFields 1315 default: 1316 return nil 1317 } 1318 } 1319 file_google_cloud_retail_v2_common_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { 1320 switch v := v.(*Interval); i { 1321 case 0: 1322 return &v.state 1323 case 1: 1324 return &v.sizeCache 1325 case 2: 1326 return &v.unknownFields 1327 default: 1328 return nil 1329 } 1330 } 1331 file_google_cloud_retail_v2_common_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { 1332 switch v := v.(*PriceInfo); i { 1333 case 0: 1334 return &v.state 1335 case 1: 1336 return &v.sizeCache 1337 case 2: 1338 return &v.unknownFields 1339 default: 1340 return nil 1341 } 1342 } 1343 file_google_cloud_retail_v2_common_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { 1344 switch v := v.(*Rating); i { 1345 case 0: 1346 return &v.state 1347 case 1: 1348 return &v.sizeCache 1349 case 2: 1350 return &v.unknownFields 1351 default: 1352 return nil 1353 } 1354 } 1355 file_google_cloud_retail_v2_common_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { 1356 switch v := v.(*UserInfo); i { 1357 case 0: 1358 return &v.state 1359 case 1: 1360 return &v.sizeCache 1361 case 2: 1362 return &v.unknownFields 1363 default: 1364 return nil 1365 } 1366 } 1367 file_google_cloud_retail_v2_common_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { 1368 switch v := v.(*Promotion); i { 1369 case 0: 1370 return &v.state 1371 case 1: 1372 return &v.sizeCache 1373 case 2: 1374 return &v.unknownFields 1375 default: 1376 return nil 1377 } 1378 } 1379 file_google_cloud_retail_v2_common_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { 1380 switch v := v.(*PriceInfo_PriceRange); i { 1381 case 0: 1382 return &v.state 1383 case 1: 1384 return &v.sizeCache 1385 case 2: 1386 return &v.unknownFields 1387 default: 1388 return nil 1389 } 1390 } 1391 } 1392 file_google_cloud_retail_v2_common_proto_msgTypes[2].OneofWrappers = []interface{}{} 1393 file_google_cloud_retail_v2_common_proto_msgTypes[5].OneofWrappers = []interface{}{ 1394 (*Interval_Minimum)(nil), 1395 (*Interval_ExclusiveMinimum)(nil), 1396 (*Interval_Maximum)(nil), 1397 (*Interval_ExclusiveMaximum)(nil), 1398 } 1399 type x struct{} 1400 out := protoimpl.TypeBuilder{ 1401 File: protoimpl.DescBuilder{ 1402 GoPackagePath: reflect.TypeOf(x{}).PkgPath(), 1403 RawDescriptor: file_google_cloud_retail_v2_common_proto_rawDesc, 1404 NumEnums: 0, 1405 NumMessages: 11, 1406 NumExtensions: 0, 1407 NumServices: 0, 1408 }, 1409 GoTypes: file_google_cloud_retail_v2_common_proto_goTypes, 1410 DependencyIndexes: file_google_cloud_retail_v2_common_proto_depIdxs, 1411 MessageInfos: file_google_cloud_retail_v2_common_proto_msgTypes, 1412 }.Build() 1413 File_google_cloud_retail_v2_common_proto = out.File 1414 file_google_cloud_retail_v2_common_proto_rawDesc = nil 1415 file_google_cloud_retail_v2_common_proto_goTypes = nil 1416 file_google_cloud_retail_v2_common_proto_depIdxs = nil 1417} 1418