123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382 |
- // Copyright 2022 Google LLC
- //
- // Licensed under the Apache License, Version 2.0 (the "License");
- // you may not use this file except in compliance with the License.
- // You may obtain a copy of the License at
- //
- // http://www.apache.org/licenses/LICENSE-2.0
- //
- // Unless required by applicable law or agreed to in writing, software
- // distributed under the License is distributed on an "AS IS" BASIS,
- // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- // See the License for the specific language governing permissions and
- // limitations under the License.
- syntax = "proto3";
- package google.apps.drive.labels.v2;
- import "google/api/field_behavior.proto";
- import "google/apps/drive/labels/v2/common.proto";
- import "google/protobuf/timestamp.proto";
- import "google/type/date.proto";
- option go_package = "google.golang.org/genproto/googleapis/apps/drive/labels/v2;labels";
- option java_multiple_files = true;
- option java_outer_classname = "FieldProto";
- option java_package = "com.google.apps.drive.labels.v2";
- option objc_class_prefix = "DLBL";
- // Defines a field that has a display name, data type, and other
- // configuration options. This field defines the kind of metadata that may be
- // set on a Drive item.
- message Field {
- // The basic properties of the field.
- message Properties {
- // Required. The display text to show in the UI identifying this field.
- string display_name = 1 [(google.api.field_behavior) = REQUIRED];
- // Whether the field should be marked as required.
- bool required = 2;
- // Input only. Insert or move this field before the indicated field. If
- // empty, the field is placed at the end of the list.
- string insert_before_field = 3 [(google.api.field_behavior) = INPUT_ONLY];
- }
- // UI display hints for rendering a field.
- message DisplayHints {
- // Whether the field should be shown as required in the UI.
- bool required = 1;
- // Whether the field should be shown in the UI as disabled.
- bool disabled = 2;
- // This field should be hidden in the search menu when searching for Drive
- // items.
- bool hidden_in_search = 3;
- // This field should be shown in the apply menu when applying values to a
- // Drive item.
- bool shown_in_apply = 4;
- }
- // The capabilities related to this field when editing the field.
- message SchemaCapabilities {
- // Whether the user can change this field.
- bool can_update = 1;
- // Whether the user can delete this field.
- // The user must have permission and the field must be deprecated.
- bool can_delete = 2;
- // Whether the user can disable this field.
- // The user must have permission and this field must not already be
- // disabled.
- bool can_disable = 3;
- // Whether the user can enable this field.
- // The user must have permission and this field must be disabled.
- bool can_enable = 4;
- }
- // The capabilities related to this field on applied metadata.
- message AppliedCapabilities {
- // Whether the user can read related applied metadata on items.
- bool can_read = 1;
- // Whether the user can search for Drive items referencing this field.
- bool can_search = 2;
- // Whether the user can set this field on Drive items.
- bool can_write = 3;
- }
- // Options for a multi-valued variant of an associated field type.
- message ListOptions {
- // Maximum number of entries permitted.
- int32 max_entries = 1;
- }
- // Options for the Text field type.
- message TextOptions {
- // Output only. The minimum valid length of values for the text field.
- int32 min_length = 1 [(google.api.field_behavior) = OUTPUT_ONLY];
- // Output only. The maximum valid length of values for the text field.
- int32 max_length = 2 [(google.api.field_behavior) = OUTPUT_ONLY];
- }
- // Options for the Integer field type.
- message IntegerOptions {
- // Output only. The minimum valid value for the integer field.
- int64 min_value = 1 [(google.api.field_behavior) = OUTPUT_ONLY];
- // Output only. The maximum valid value for the integer field.
- int64 max_value = 2 [(google.api.field_behavior) = OUTPUT_ONLY];
- }
- // Options for the date field type.
- message DateOptions {
- // Localized date format options.
- enum DateFormat {
- // Date format unspecified.
- DATE_FORMAT_UNSPECIFIED = 0;
- // Includes full month name.
- // For example, January 12, 1999
- // (MMMM d, y)
- LONG_DATE = 1;
- // Short, numeric, representation.
- // For example, 12/13/99
- // (M/d/yy)
- SHORT_DATE = 2;
- }
- // Localized date formatting option. Field values are rendered in
- // this format according to their locale.
- DateFormat date_format_type = 1;
- // Output only. ICU date format.
- string date_format = 2 [(google.api.field_behavior) = OUTPUT_ONLY];
- // Output only. Minimum valid value (year, month, day).
- google.type.Date min_value = 3 [(google.api.field_behavior) = OUTPUT_ONLY];
- // Output only. Maximum valid value (year, month, day).
- google.type.Date max_value = 4 [(google.api.field_behavior) = OUTPUT_ONLY];
- }
- // Options for the selection field type.
- message SelectionOptions {
- // Selection field choice.
- message Choice {
- // Basic properties of the choice.
- message Properties {
- // Required. The display text to show in the UI identifying this field.
- string display_name = 1 [(google.api.field_behavior) = REQUIRED];
- // The description of this label.
- string description = 2;
- // The badge configuration for this choice. When set, the
- // label that owns this choice is considered a "badged label".
- BadgeConfig badge_config = 3;
- // Input only. Insert or move this choice before the indicated choice.
- // If empty, the choice is placed at the end of the list.
- string insert_before_choice = 4
- [(google.api.field_behavior) = INPUT_ONLY];
- }
- // UI display hints for rendering an option.
- message DisplayHints {
- // Whether the option should be shown in the UI as disabled.
- bool disabled = 1;
- // This option should be hidden in the search menu when searching for
- // Drive items.
- bool hidden_in_search = 2;
- // This option should be shown in the apply menu when applying values to
- // a Drive item.
- bool shown_in_apply = 3;
- // The colors to use for the badge. Changed to Google Material colors
- // based on the chosen `properties.badge_config.color`.
- BadgeColors badge_colors = 4;
- // The dark-mode color to use for the badge. Changed to Google Material
- // colors based on the chosen `properties.badge_config.color`.
- BadgeColors dark_badge_colors = 5;
- // The priority of this badge. Used to compare and sort between multiple
- // badges. A lower number means the badge should be shown first.
- // When a badging configuration is not present, this will be 0.
- // Otherwise, this will be set to `BadgeConfig.priority_override` or the
- // default heuristic which prefers creation date of the label, and field
- // and option priority.
- int64 badge_priority = 6;
- }
- // The capabilities related to this choice when editing the choice.
- message SchemaCapabilities {
- // Whether the user can update this choice.
- bool can_update = 1;
- // Whether the user can delete this choice.
- bool can_delete = 2;
- // Whether the user can disable this choice.
- bool can_disable = 3;
- // Whether the user can enable this choice.
- bool can_enable = 4;
- }
- // The capabilities related to this choice on applied metadata.
- message AppliedCapabilities {
- // Whether the user can read related applied metadata on items.
- bool can_read = 1;
- // Whether the user can use this choice in search queries.
- bool can_search = 2;
- // Whether the user can select this choice on an item.
- bool can_select = 3;
- }
- // The unique value of the choice.
- // This ID is autogenerated. Matches the regex: `([a-zA-Z0-9_])+`.
- string id = 1;
- // Basic properties of the choice.
- Properties properties = 2;
- // Output only. Lifecycle of the choice.
- Lifecycle lifecycle = 3 [(google.api.field_behavior) = OUTPUT_ONLY];
- // Output only. UI display hints for rendering a choice.
- DisplayHints display_hints = 4
- [(google.api.field_behavior) = OUTPUT_ONLY];
- // Output only. The capabilities related to this option when editing the
- // option.
- SchemaCapabilities schema_capabilities = 5
- [(google.api.field_behavior) = OUTPUT_ONLY];
- // Output only. The capabilities related to this choice on applied
- // metadata.
- AppliedCapabilities applied_capabilities = 6
- [(google.api.field_behavior) = OUTPUT_ONLY];
- // Output only. The user who created this choice.
- UserInfo creator = 7 [(google.api.field_behavior) = OUTPUT_ONLY];
- // Output only. The time this choice was created.
- google.protobuf.Timestamp create_time = 8
- [(google.api.field_behavior) = OUTPUT_ONLY];
- // Output only. The user who updated this choice last.
- UserInfo updater = 9 [(google.api.field_behavior) = OUTPUT_ONLY];
- // Output only. The time this choice was updated last.
- google.protobuf.Timestamp update_time = 10
- [(google.api.field_behavior) = OUTPUT_ONLY];
- // Output only. The user who published this choice. This value has no
- // meaning when the choice is not published.
- UserInfo publisher = 11 [(google.api.field_behavior) = OUTPUT_ONLY];
- // Output only. The time this choice was published. This value has no
- // meaning when the choice is not published.
- google.protobuf.Timestamp publish_time = 12
- [(google.api.field_behavior) = OUTPUT_ONLY];
- // Output only. The user who disabled this choice. This value has no
- // meaning when the option is not disabled.
- UserInfo disabler = 13 [(google.api.field_behavior) = OUTPUT_ONLY];
- // Output only. The time this choice was disabled. This value has no
- // meaning when the choice is not disabled.
- google.protobuf.Timestamp disable_time = 14
- [(google.api.field_behavior) = OUTPUT_ONLY];
- // Output only. The LockStatus of this choice.
- LockStatus lock_status = 15 [(google.api.field_behavior) = OUTPUT_ONLY];
- }
- // When specified, indicates this field supports a list of values.
- // Once the field is published, this cannot be changed.
- ListOptions list_options = 1;
- // The options available for this selection field.
- // The list order is consistent, and modified with `insert_before_choice`.
- repeated Choice choices = 2;
- }
- // Options for the user field type.
- message UserOptions {
- // When specified, indicates that this field supports a list of values.
- // Once the field is published, this cannot be changed.
- ListOptions list_options = 1;
- }
- // The data type and options of this field.
- // Once published, the data type cannot be changed.
- oneof type {
- // Text field options.
- TextOptions text_options = 16;
- // Integer field options.
- IntegerOptions integer_options = 18;
- // Date field options.
- DateOptions date_options = 19;
- // Selection field options.
- SelectionOptions selection_options = 20;
- // User field options.
- UserOptions user_options = 21;
- }
- // Output only. The key of a field, unique within a label or library.
- //
- // This value is autogenerated. Matches the regex: `([a-zA-Z0-9])+`
- string id = 1 [(google.api.field_behavior) = OUTPUT_ONLY];
- // Output only. The key to use when constructing Drive search queries to find
- // files based on values defined for this field on files.
- // For example, "`{query_key}` > 2001-01-01".
- string query_key = 2 [(google.api.field_behavior) = OUTPUT_ONLY];
- // The basic properties of the field.
- Properties properties = 3;
- // Output only. The lifecycle of this field.
- Lifecycle lifecycle = 4 [(google.api.field_behavior) = OUTPUT_ONLY];
- // Output only. UI display hints for rendering a field.
- DisplayHints display_hints = 5 [(google.api.field_behavior) = OUTPUT_ONLY];
- // Output only. The capabilities this user has when editing this field.
- SchemaCapabilities schema_capabilities = 6
- [(google.api.field_behavior) = OUTPUT_ONLY];
- // Output only. The capabilities this user has on this field and its value
- // when the label is applied on Drive items.
- AppliedCapabilities applied_capabilities = 7
- [(google.api.field_behavior) = OUTPUT_ONLY];
- // Output only. The user who created this field.
- UserInfo creator = 8 [(google.api.field_behavior) = OUTPUT_ONLY];
- // Output only. The time this field was created.
- google.protobuf.Timestamp create_time = 9
- [(google.api.field_behavior) = OUTPUT_ONLY];
- // Output only. The user who modified this field.
- UserInfo updater = 10 [(google.api.field_behavior) = OUTPUT_ONLY];
- // Output only. The time this field was updated.
- google.protobuf.Timestamp update_time = 11
- [(google.api.field_behavior) = OUTPUT_ONLY];
- // Output only. The user who published this field. This value has no meaning
- // when the field is not published.
- UserInfo publisher = 12 [(google.api.field_behavior) = OUTPUT_ONLY];
- // Output only. The user who disabled this field. This value has no meaning
- // when the field is not disabled.
- UserInfo disabler = 13 [(google.api.field_behavior) = OUTPUT_ONLY];
- // Output only. The time this field was disabled. This value has no meaning
- // when the field is not disabled.
- google.protobuf.Timestamp disable_time = 14
- [(google.api.field_behavior) = OUTPUT_ONLY];
- // Output only. The LockStatus of this field.
- LockStatus lock_status = 15 [(google.api.field_behavior) = OUTPUT_ONLY];
- }
|