• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4 
5 #ifndef CHROME_BROWSER_AUTOFILL_FIELD_TYPES_H_
6 #define CHROME_BROWSER_AUTOFILL_FIELD_TYPES_H_
7 #pragma once
8 
9 #include <set>
10 
11 typedef enum _AddressType {
12   kGenericAddress = 0,
13   kBillingAddress,
14   kShippingAddress
15 } AddressType;
16 
17 // NOTE: This list MUST not be modified.  The server aggregates and stores these
18 // types over several versions, so we must remain fully compatible with the
19 // Autofill server, which is itself backward-compatible.  The list must be kept
20 // up to date with the Autofill server list.
21 //
22 // This is the list of all valid field types.
23 typedef enum _FieldType {
24   // Server indication that it has no data for the requested field.
25   NO_SERVER_DATA = 0,
26   // Client indication that the text entered did not match anything in the
27   // personal data.
28   UNKNOWN_TYPE = 1,
29   // The "empty" type indicates that the user hasn't entered anything
30   // in this field.
31   EMPTY_TYPE = 2,
32   // Personal Information categorization types.
33   NAME_FIRST = 3,
34   NAME_MIDDLE = 4,
35   NAME_LAST = 5,
36   NAME_MIDDLE_INITIAL = 6,
37   NAME_FULL = 7,
38   NAME_SUFFIX = 8,
39   EMAIL_ADDRESS = 9,
40   PHONE_HOME_NUMBER = 10,
41   PHONE_HOME_CITY_CODE = 11,
42   PHONE_HOME_COUNTRY_CODE = 12,
43   PHONE_HOME_CITY_AND_NUMBER = 13,
44   PHONE_HOME_WHOLE_NUMBER = 14,
45 
46   // Work phone numbers (values [15,19]) are deprecated.
47 
48   PHONE_FAX_NUMBER = 20,
49   PHONE_FAX_CITY_CODE = 21,
50   PHONE_FAX_COUNTRY_CODE = 22,
51   PHONE_FAX_CITY_AND_NUMBER = 23,
52   PHONE_FAX_WHOLE_NUMBER = 24,
53 
54   // Cell phone numbers (values [25, 29]) are deprecated.
55 
56   ADDRESS_HOME_LINE1 = 30,
57   ADDRESS_HOME_LINE2 = 31,
58   ADDRESS_HOME_APT_NUM = 32,
59   ADDRESS_HOME_CITY = 33,
60   ADDRESS_HOME_STATE = 34,
61   ADDRESS_HOME_ZIP = 35,
62   ADDRESS_HOME_COUNTRY = 36,
63   ADDRESS_BILLING_LINE1 = 37,
64   ADDRESS_BILLING_LINE2 = 38,
65   ADDRESS_BILLING_APT_NUM = 39,
66   ADDRESS_BILLING_CITY = 40,
67   ADDRESS_BILLING_STATE = 41,
68   ADDRESS_BILLING_ZIP = 42,
69   ADDRESS_BILLING_COUNTRY = 43,
70 
71   // ADDRESS_SHIPPING values [44,50] are deprecated.
72 
73   CREDIT_CARD_NAME = 51,
74   CREDIT_CARD_NUMBER = 52,
75   CREDIT_CARD_EXP_MONTH = 53,
76   CREDIT_CARD_EXP_2_DIGIT_YEAR = 54,
77   CREDIT_CARD_EXP_4_DIGIT_YEAR = 55,
78   CREDIT_CARD_EXP_DATE_2_DIGIT_YEAR = 56,
79   CREDIT_CARD_EXP_DATE_4_DIGIT_YEAR = 57,
80   CREDIT_CARD_TYPE = 58,
81   CREDIT_CARD_VERIFICATION_CODE = 59,
82 
83   COMPANY_NAME = 60,
84 
85   // No new types can be added.
86 
87   MAX_VALID_FIELD_TYPE = 61,
88 } AutofillFieldType;
89 
90 typedef std::set<AutofillFieldType> FieldTypeSet;
91 
92 #endif  // CHROME_BROWSER_AUTOFILL_FIELD_TYPES_H_
93