syntax = "proto3";

package com.wixpress.appservice.api.upstream.com.wix.ecommerce.dropshipping_provider_spi.api.v1;

import "wix/spi/definitions.proto";
import "wix/api/validations.proto";
import "wix/api/annotations.proto";

message DropshippingProviderSPIConfig {
  option (.wix.api.decomposite_of) = "com.wix.ecommerce.dropshipping_provider_spi.api.v1.DropshippingProviderSPIConfig";
  //name of the dropshipping provider was it appears in relevant screens/mails in eComm Platform
  string name = 8;
  // The URL of the SPI implementation - not needed in this case
  string deployment_uri = 1 [(.wix.spi.base_uri) = true];
  // URI for the thumbnail page
  string thumbnail_uri = 2 [(.wix.api.format) = WEB_URL];
  //URI of the dashboard page
  string dashboard_uri = 3 [(.wix.api.format) = WEB_URL];
  // if duplication operation for product is locked
  LockableOperation duplicate_product = 4;
  // whether there is a warning or not when price is changed
  RestrictedOperation change_price = 5;
  // whether the chagne inventory operations are locked
  LockableOperation change_inventory = 6;
  // where there is a warning of not when changing options
  RestrictedOperation manage_options = 7;

}


enum RestrictedOperation {

  UNSPECIFIED_RESTRICTED = 0;
  ALLOW = 1;
  WARN = 2;
}
enum LockableOperation {
  // When operation lockability is not specified
  UNSPECIFIED_LOCKABLE = 0;
  // Operation is locked
  LOCKED = 1;
  // Operation is unlocked
  UNLOCKED = 2;
}
