]> git.saurik.com Git - apple/javascriptcore.git/blob - inspector/protocol/IndexedDB.json
JavaScriptCore-7601.1.46.3.tar.gz
[apple/javascriptcore.git] / inspector / protocol / IndexedDB.json
1 {
2 "domain": "IndexedDB",
3 "featureGuard": "ENABLE(INDEXED_DATABASE)",
4 "availability": "web",
5 "types": [
6 {
7 "id": "DatabaseWithObjectStores",
8 "type": "object",
9 "description": "Database with an array of object stores.",
10 "properties": [
11 { "name": "name", "type": "string", "description": "Database name." },
12 { "name": "version", "type": "number", "description": "Database version." },
13 { "name": "objectStores", "type": "array", "items": { "$ref": "ObjectStore" }, "description": "Object stores in this database." }
14 ]
15 },
16 {
17 "id": "ObjectStore",
18 "type": "object",
19 "description": "Object store.",
20 "properties": [
21 { "name": "name", "type": "string", "description": "Object store name." },
22 { "name": "keyPath", "$ref": "KeyPath", "description": "Object store key path." },
23 { "name": "autoIncrement", "type": "boolean", "description": "If true, object store has auto increment flag set." },
24 { "name": "indexes", "type": "array", "items": { "$ref": "ObjectStoreIndex" }, "description": "Indexes in this object store." }
25 ]
26 },
27 {
28 "id": "ObjectStoreIndex",
29 "type": "object",
30 "description": "Object store index.",
31 "properties": [
32 { "name": "name", "type": "string", "description": "Index name." },
33 { "name": "keyPath", "$ref": "KeyPath", "description": "Index key path." },
34 { "name": "unique", "type": "boolean", "description": "If true, index is unique." },
35 { "name": "multiEntry", "type": "boolean", "description": "If true, index allows multiple entries for a key." }
36 ]
37 },
38 {
39 "id": "Key",
40 "type": "object",
41 "description": "Key.",
42 "properties": [
43 { "name": "type", "type": "string", "enum": ["number", "string", "date", "array"], "description": "Key type." },
44 { "name": "number", "type": "number", "optional": true, "description": "Number value." },
45 { "name": "string", "type": "string", "optional": true, "description": "String value." },
46 { "name": "date", "type": "number", "optional": true, "description": "Date value." },
47 { "name": "array", "type": "array", "optional": true, "items": { "$ref": "Key" }, "description": "Array value." }
48 ]
49 },
50 {
51 "id": "KeyRange",
52 "type": "object",
53 "description": "Key range.",
54 "properties": [
55 { "name": "lower", "$ref": "Key", "optional": true, "description": "Lower bound." },
56 { "name": "upper", "$ref": "Key", "optional": true, "description": "Upper bound." },
57 { "name": "lowerOpen", "type": "boolean", "description": "If true lower bound is open." },
58 { "name": "upperOpen", "type": "boolean", "description": "If true upper bound is open." }
59 ]
60 },
61 {
62 "id": "DataEntry",
63 "type": "object",
64 "description": "Data entry.",
65 "properties": [
66 { "name": "key", "$ref": "Runtime.RemoteObject", "description": "Key." },
67 { "name": "primaryKey", "$ref": "Runtime.RemoteObject", "description": "Primary key." },
68 { "name": "value", "$ref": "Runtime.RemoteObject", "description": "Value." }
69 ]
70 },
71 {
72 "id": "KeyPath",
73 "type": "object",
74 "description": "Key path.",
75 "properties": [
76 { "name": "type", "type": "string", "enum": ["null", "string", "array"], "description": "Key path type." },
77 { "name": "string", "type": "string", "optional": true, "description": "String value." },
78 { "name": "array", "type": "array", "optional": true, "items": { "type": "string" }, "description": "Array value." }
79 ]
80 }
81 ],
82 "commands": [
83 {
84 "name": "enable",
85 "description": "Enables events from backend."
86 },
87 {
88 "name": "disable",
89 "description": "Disables events from backend."
90 },
91 {
92 "name": "requestDatabaseNames",
93 "async": true,
94 "parameters": [
95 { "name": "securityOrigin", "type": "string", "description": "Security origin." }
96 ],
97 "returns": [
98 { "name": "databaseNames", "type": "array", "items": { "type": "string" }, "description": "Database names for origin." }
99 ],
100 "description": "Requests database names for given security origin."
101 },
102 {
103 "name": "requestDatabase",
104 "async": true,
105 "parameters": [
106 { "name": "securityOrigin", "type": "string", "description": "Security origin." },
107 { "name": "databaseName", "type": "string", "description": "Database name." }
108 ],
109 "returns": [
110 { "name": "databaseWithObjectStores", "$ref": "DatabaseWithObjectStores", "description": "Database with an array of object stores." }
111 ],
112 "description": "Requests database with given name in given frame."
113 },
114 {
115 "name": "requestData",
116 "async": true,
117 "parameters": [
118 { "name": "securityOrigin", "type": "string", "description": "Security origin." },
119 { "name": "databaseName", "type": "string", "description": "Database name." },
120 { "name": "objectStoreName", "type": "string", "description": "Object store name." },
121 { "name": "indexName", "type": "string", "description": "Index name, empty string for object store data requests." },
122 { "name": "skipCount", "type": "integer", "description": "Number of records to skip." },
123 { "name": "pageSize", "type": "integer", "description": "Number of records to fetch." },
124 { "name": "keyRange", "$ref": "KeyRange", "optional": true, "description": "Key range." }
125 ],
126 "returns": [
127 { "name": "objectStoreDataEntries", "type": "array", "items": { "$ref": "DataEntry" }, "description": "Array of object store data entries." },
128 { "name": "hasMore", "type": "boolean", "description": "If true, there are more entries to fetch in the given range." }
129 ],
130 "description": "Requests data from object store or index."
131 },
132 {
133 "name": "clearObjectStore",
134 "async": true,
135 "parameters": [
136 { "name": "securityOrigin", "type": "string", "description": "Security origin." },
137 { "name": "databaseName", "type": "string", "description": "Database name." },
138 { "name": "objectStoreName", "type": "string", "description": "Object store name." }
139 ],
140 "returns": [
141 ],
142 "description": "Clears all entries from an object store."
143 }
144 ]
145 }