@kaeawc/auto-mobile 0.0.49 → 0.0.51

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -123,35 +123,57 @@
123
123
  "type": "object",
124
124
  "properties": {
125
125
  "bounds": {
126
- "type": "object",
127
- "properties": {
128
- "left": {
129
- "type": "number"
130
- },
131
- "top": {
132
- "type": "number"
133
- },
134
- "right": {
135
- "type": "number"
136
- },
137
- "bottom": {
138
- "type": "number"
139
- },
140
- "centerX": {
141
- "type": "number"
126
+ "anyOf": [
127
+ {
128
+ "type": "object",
129
+ "properties": {
130
+ "left": {
131
+ "type": "number"
132
+ },
133
+ "top": {
134
+ "type": "number"
135
+ },
136
+ "right": {
137
+ "type": "number"
138
+ },
139
+ "bottom": {
140
+ "type": "number"
141
+ },
142
+ "centerX": {
143
+ "type": "number"
144
+ },
145
+ "centerY": {
146
+ "type": "number"
147
+ }
148
+ },
149
+ "required": [
150
+ "left",
151
+ "top",
152
+ "right",
153
+ "bottom"
154
+ ],
155
+ "additionalProperties": false
142
156
  },
143
- "centerY": {
144
- "type": "number"
157
+ {
158
+ "type": "array",
159
+ "prefixItems": [
160
+ {
161
+ "type": "number"
162
+ },
163
+ {
164
+ "type": "number"
165
+ },
166
+ {
167
+ "type": "number"
168
+ },
169
+ {
170
+ "type": "number"
171
+ }
172
+ ],
173
+ "description": "Compact bounds tuple [left, top, right, bottom], emitted in place of the {left, top, right, bottom} object."
145
174
  }
146
- },
147
- "required": [
148
- "left",
149
- "top",
150
- "right",
151
- "bottom"
152
175
  ],
153
- "additionalProperties": false,
154
- "description": "Element bounds. Default: object {left, top, right, bottom} (+ optional centerX/centerY). Under --observe-result-compact: positional tuple [left, top, right, bottom]."
176
+ "description": "Element bounds. Default: positional tuple [left, top, right, bottom]; the object {left, top, right, bottom} (+ optional centerX/centerY) is also schema-valid."
155
177
  },
156
178
  "text": {
157
179
  "type": "string"
@@ -3450,10 +3472,10 @@
3450
3472
  "additionalProperties": false
3451
3473
  }
3452
3474
  ],
3453
- "description": "Scope to a subtree: true = foreground app; {resourceId|text} = anchor. Needs --observe-focus-scope."
3475
+ "description": "Scope to a subtree: true = foreground app; {resourceId|text} = anchor."
3454
3476
  },
3455
3477
  "region": {
3456
- "description": "Crop to a normalized 0..1 box; true = inset content rect. Needs --observe-region.",
3478
+ "description": "Crop to a normalized 0..1 box; true = inset content rect.",
3457
3479
  "anyOf": [
3458
3480
  {
3459
3481
  "type": "boolean"
@@ -3493,7 +3515,7 @@
3493
3515
  ]
3494
3516
  },
3495
3517
  "overview": {
3496
- "description": "Collapse to a container skeleton. Needs --observe-overview.",
3518
+ "description": "Collapse to a container skeleton.",
3497
3519
  "type": "boolean"
3498
3520
  }
3499
3521
  },
@@ -3572,35 +3594,57 @@
3572
3594
  "type": "object",
3573
3595
  "properties": {
3574
3596
  "bounds": {
3575
- "type": "object",
3576
- "properties": {
3577
- "left": {
3578
- "type": "number"
3579
- },
3580
- "top": {
3581
- "type": "number"
3582
- },
3583
- "right": {
3584
- "type": "number"
3585
- },
3586
- "bottom": {
3587
- "type": "number"
3588
- },
3589
- "centerX": {
3590
- "type": "number"
3597
+ "anyOf": [
3598
+ {
3599
+ "type": "object",
3600
+ "properties": {
3601
+ "left": {
3602
+ "type": "number"
3603
+ },
3604
+ "top": {
3605
+ "type": "number"
3606
+ },
3607
+ "right": {
3608
+ "type": "number"
3609
+ },
3610
+ "bottom": {
3611
+ "type": "number"
3612
+ },
3613
+ "centerX": {
3614
+ "type": "number"
3615
+ },
3616
+ "centerY": {
3617
+ "type": "number"
3618
+ }
3619
+ },
3620
+ "required": [
3621
+ "left",
3622
+ "top",
3623
+ "right",
3624
+ "bottom"
3625
+ ],
3626
+ "additionalProperties": false
3591
3627
  },
3592
- "centerY": {
3593
- "type": "number"
3628
+ {
3629
+ "type": "array",
3630
+ "prefixItems": [
3631
+ {
3632
+ "type": "number"
3633
+ },
3634
+ {
3635
+ "type": "number"
3636
+ },
3637
+ {
3638
+ "type": "number"
3639
+ },
3640
+ {
3641
+ "type": "number"
3642
+ }
3643
+ ],
3644
+ "description": "Compact bounds tuple [left, top, right, bottom], emitted in place of the {left, top, right, bottom} object."
3594
3645
  }
3595
- },
3596
- "required": [
3597
- "left",
3598
- "top",
3599
- "right",
3600
- "bottom"
3601
3646
  ],
3602
- "additionalProperties": false,
3603
- "description": "Element bounds. Default: object {left, top, right, bottom} (+ optional centerX/centerY). Under --observe-result-compact: positional tuple [left, top, right, bottom]."
3647
+ "description": "Element bounds. Default: positional tuple [left, top, right, bottom]; the object {left, top, right, bottom} (+ optional centerX/centerY) is also schema-valid."
3604
3648
  },
3605
3649
  "occlusionState": {
3606
3650
  "type": "string"
@@ -3979,45 +4023,150 @@
3979
4023
  "additionalProperties": false
3980
4024
  },
3981
4025
  "layoutWarnings": {
3982
- "type": "array",
3983
- "items": {
3984
- "type": "object",
3985
- "properties": {
3986
- "type": {
3987
- "type": "string",
3988
- "enum": [
3989
- "important-content-under-inset",
3990
- "interaction-in-system-gesture-region"
3991
- ]
3992
- },
3993
- "severity": {
3994
- "type": "string",
3995
- "enum": [
3996
- "warning",
3997
- "info"
3998
- ]
3999
- },
4000
- "element": {
4026
+ "type": "object",
4027
+ "properties": {
4028
+ "scope": {
4029
+ "type": "string",
4030
+ "enum": [
4031
+ "full",
4032
+ "truncated",
4033
+ "scoped"
4034
+ ]
4035
+ },
4036
+ "total": {
4037
+ "type": "number"
4038
+ },
4039
+ "warnings": {
4040
+ "type": "array",
4041
+ "items": {
4001
4042
  "type": "object",
4002
4043
  "properties": {
4003
- "viewId": {
4004
- "type": "string"
4044
+ "type": {
4045
+ "type": "string",
4046
+ "enum": [
4047
+ "important-content-under-inset",
4048
+ "interaction-in-system-gesture-region"
4049
+ ]
4005
4050
  },
4006
- "resourceId": {
4007
- "type": "string"
4051
+ "severity": {
4052
+ "type": "string",
4053
+ "enum": [
4054
+ "warning",
4055
+ "info"
4056
+ ]
4008
4057
  },
4009
- "text": {
4010
- "type": "string"
4058
+ "element": {
4059
+ "type": "object",
4060
+ "properties": {
4061
+ "viewId": {
4062
+ "type": "string"
4063
+ },
4064
+ "resourceId": {
4065
+ "type": "string"
4066
+ },
4067
+ "text": {
4068
+ "type": "string"
4069
+ },
4070
+ "contentDesc": {
4071
+ "type": "string"
4072
+ },
4073
+ "bounds": {
4074
+ "anyOf": [
4075
+ {
4076
+ "type": "object",
4077
+ "properties": {
4078
+ "left": {
4079
+ "type": "number"
4080
+ },
4081
+ "top": {
4082
+ "type": "number"
4083
+ },
4084
+ "right": {
4085
+ "type": "number"
4086
+ },
4087
+ "bottom": {
4088
+ "type": "number"
4089
+ },
4090
+ "centerX": {
4091
+ "type": "number"
4092
+ },
4093
+ "centerY": {
4094
+ "type": "number"
4095
+ }
4096
+ },
4097
+ "required": [
4098
+ "left",
4099
+ "top",
4100
+ "right",
4101
+ "bottom"
4102
+ ],
4103
+ "additionalProperties": false
4104
+ },
4105
+ {
4106
+ "type": "array",
4107
+ "prefixItems": [
4108
+ {
4109
+ "type": "number"
4110
+ },
4111
+ {
4112
+ "type": "number"
4113
+ },
4114
+ {
4115
+ "type": "number"
4116
+ },
4117
+ {
4118
+ "type": "number"
4119
+ }
4120
+ ],
4121
+ "description": "Compact bounds tuple [left, top, right, bottom], emitted in place of the {left, top, right, bottom} object."
4122
+ }
4123
+ ],
4124
+ "description": "Element bounds. Default: positional tuple [left, top, right, bottom]; the object {left, top, right, bottom} (+ optional centerX/centerY) is also schema-valid."
4125
+ }
4126
+ },
4127
+ "required": [
4128
+ "bounds"
4129
+ ],
4130
+ "additionalProperties": false
4011
4131
  },
4012
- "contentDesc": {
4013
- "type": "string"
4132
+ "categories": {
4133
+ "type": "array",
4134
+ "items": {
4135
+ "type": "string",
4136
+ "enum": [
4137
+ "text",
4138
+ "interaction"
4139
+ ]
4140
+ }
4014
4141
  },
4015
- "bounds": {
4142
+ "insetTypes": {
4143
+ "type": "array",
4144
+ "items": {
4145
+ "type": "string",
4146
+ "enum": [
4147
+ "systemBars",
4148
+ "displayCutout",
4149
+ "safeArea",
4150
+ "systemGestures",
4151
+ "mandatorySystemGestures"
4152
+ ]
4153
+ }
4154
+ },
4155
+ "sides": {
4156
+ "type": "array",
4157
+ "items": {
4158
+ "type": "string",
4159
+ "enum": [
4160
+ "top",
4161
+ "right",
4162
+ "bottom",
4163
+ "left"
4164
+ ]
4165
+ }
4166
+ },
4167
+ "overflowPx": {
4016
4168
  "type": "object",
4017
4169
  "properties": {
4018
- "left": {
4019
- "type": "number"
4020
- },
4021
4170
  "top": {
4022
4171
  "type": "number"
4023
4172
  },
@@ -4027,126 +4176,64 @@
4027
4176
  "bottom": {
4028
4177
  "type": "number"
4029
4178
  },
4030
- "centerX": {
4179
+ "left": {
4180
+ "type": "number"
4181
+ }
4182
+ },
4183
+ "additionalProperties": false
4184
+ },
4185
+ "insetPx": {
4186
+ "type": "object",
4187
+ "properties": {
4188
+ "top": {
4031
4189
  "type": "number"
4032
4190
  },
4033
- "centerY": {
4191
+ "right": {
4192
+ "type": "number"
4193
+ },
4194
+ "bottom": {
4195
+ "type": "number"
4196
+ },
4197
+ "left": {
4034
4198
  "type": "number"
4035
4199
  }
4036
4200
  },
4037
- "required": [
4038
- "left",
4039
- "top",
4040
- "right",
4041
- "bottom"
4042
- ],
4043
- "additionalProperties": false,
4044
- "description": "Element bounds. Default: object {left, top, right, bottom} (+ optional centerX/centerY). Under --observe-result-compact: positional tuple [left, top, right, bottom]."
4045
- }
4046
- },
4047
- "required": [
4048
- "bounds"
4049
- ],
4050
- "additionalProperties": false
4051
- },
4052
- "categories": {
4053
- "type": "array",
4054
- "items": {
4055
- "type": "string",
4056
- "enum": [
4057
- "text",
4058
- "interaction"
4059
- ]
4060
- }
4061
- },
4062
- "insetTypes": {
4063
- "type": "array",
4064
- "items": {
4065
- "type": "string",
4066
- "enum": [
4067
- "systemBars",
4068
- "displayCutout",
4069
- "safeArea",
4070
- "systemGestures",
4071
- "mandatorySystemGestures"
4072
- ]
4073
- }
4074
- },
4075
- "sides": {
4076
- "type": "array",
4077
- "items": {
4078
- "type": "string",
4079
- "enum": [
4080
- "top",
4081
- "right",
4082
- "bottom",
4083
- "left"
4084
- ]
4085
- }
4086
- },
4087
- "overflowPx": {
4088
- "type": "object",
4089
- "properties": {
4090
- "top": {
4091
- "type": "number"
4092
- },
4093
- "right": {
4094
- "type": "number"
4095
- },
4096
- "bottom": {
4097
- "type": "number"
4098
- },
4099
- "left": {
4100
- "type": "number"
4101
- }
4102
- },
4103
- "additionalProperties": false
4104
- },
4105
- "insetPx": {
4106
- "type": "object",
4107
- "properties": {
4108
- "top": {
4109
- "type": "number"
4110
- },
4111
- "right": {
4112
- "type": "number"
4201
+ "additionalProperties": false
4113
4202
  },
4114
- "bottom": {
4115
- "type": "number"
4203
+ "overlapPercent": {
4204
+ "type": "integer",
4205
+ "minimum": -9007199254740991,
4206
+ "maximum": 9007199254740991
4116
4207
  },
4117
- "left": {
4118
- "type": "number"
4208
+ "confidence": {
4209
+ "type": "string",
4210
+ "enum": [
4211
+ "high",
4212
+ "medium"
4213
+ ]
4119
4214
  }
4120
4215
  },
4216
+ "required": [
4217
+ "type",
4218
+ "severity",
4219
+ "element",
4220
+ "categories",
4221
+ "insetTypes",
4222
+ "sides",
4223
+ "overflowPx",
4224
+ "insetPx",
4225
+ "overlapPercent",
4226
+ "confidence"
4227
+ ],
4121
4228
  "additionalProperties": false
4122
- },
4123
- "overlapPercent": {
4124
- "type": "integer",
4125
- "minimum": -9007199254740991,
4126
- "maximum": 9007199254740991
4127
- },
4128
- "confidence": {
4129
- "type": "string",
4130
- "enum": [
4131
- "high",
4132
- "medium"
4133
- ]
4134
4229
  }
4135
- },
4136
- "required": [
4137
- "type",
4138
- "severity",
4139
- "element",
4140
- "categories",
4141
- "insetTypes",
4142
- "sides",
4143
- "overflowPx",
4144
- "insetPx",
4145
- "overlapPercent",
4146
- "confidence"
4147
- ],
4148
- "additionalProperties": false
4149
- }
4230
+ }
4231
+ },
4232
+ "required": [
4233
+ "scope",
4234
+ "warnings"
4235
+ ],
4236
+ "additionalProperties": false
4150
4237
  },
4151
4238
  "viewHierarchy": {
4152
4239
  "type": "object",
@@ -4181,35 +4268,57 @@
4181
4268
  "type": "object",
4182
4269
  "properties": {
4183
4270
  "bounds": {
4184
- "type": "object",
4185
- "properties": {
4186
- "left": {
4187
- "type": "number"
4188
- },
4189
- "top": {
4190
- "type": "number"
4191
- },
4192
- "right": {
4193
- "type": "number"
4194
- },
4195
- "bottom": {
4196
- "type": "number"
4197
- },
4198
- "centerX": {
4199
- "type": "number"
4271
+ "anyOf": [
4272
+ {
4273
+ "type": "object",
4274
+ "properties": {
4275
+ "left": {
4276
+ "type": "number"
4277
+ },
4278
+ "top": {
4279
+ "type": "number"
4280
+ },
4281
+ "right": {
4282
+ "type": "number"
4283
+ },
4284
+ "bottom": {
4285
+ "type": "number"
4286
+ },
4287
+ "centerX": {
4288
+ "type": "number"
4289
+ },
4290
+ "centerY": {
4291
+ "type": "number"
4292
+ }
4293
+ },
4294
+ "required": [
4295
+ "left",
4296
+ "top",
4297
+ "right",
4298
+ "bottom"
4299
+ ],
4300
+ "additionalProperties": false
4200
4301
  },
4201
- "centerY": {
4202
- "type": "number"
4302
+ {
4303
+ "type": "array",
4304
+ "prefixItems": [
4305
+ {
4306
+ "type": "number"
4307
+ },
4308
+ {
4309
+ "type": "number"
4310
+ },
4311
+ {
4312
+ "type": "number"
4313
+ },
4314
+ {
4315
+ "type": "number"
4316
+ }
4317
+ ],
4318
+ "description": "Compact bounds tuple [left, top, right, bottom], emitted in place of the {left, top, right, bottom} object."
4203
4319
  }
4204
- },
4205
- "required": [
4206
- "left",
4207
- "top",
4208
- "right",
4209
- "bottom"
4210
4320
  ],
4211
- "additionalProperties": false,
4212
- "description": "Element bounds. Default: object {left, top, right, bottom} (+ optional centerX/centerY). Under --observe-result-compact: positional tuple [left, top, right, bottom]."
4321
+ "description": "Element bounds. Default: positional tuple [left, top, right, bottom]; the object {left, top, right, bottom} (+ optional centerX/centerY) is also schema-valid."
4213
4322
  },
4214
4323
  "hierarchy": {
4215
4324
  "$ref": "#/$defs/__schema0"
@@ -4231,35 +4340,57 @@
4231
4340
  "type": "object",
4232
4341
  "properties": {
4233
4342
  "bounds": {
4234
- "type": "object",
4235
- "properties": {
4236
- "left": {
4237
- "type": "number"
4238
- },
4239
- "top": {
4240
- "type": "number"
4241
- },
4242
- "right": {
4243
- "type": "number"
4244
- },
4245
- "bottom": {
4246
- "type": "number"
4247
- },
4248
- "centerX": {
4249
- "type": "number"
4343
+ "anyOf": [
4344
+ {
4345
+ "type": "object",
4346
+ "properties": {
4347
+ "left": {
4348
+ "type": "number"
4349
+ },
4350
+ "top": {
4351
+ "type": "number"
4352
+ },
4353
+ "right": {
4354
+ "type": "number"
4355
+ },
4356
+ "bottom": {
4357
+ "type": "number"
4358
+ },
4359
+ "centerX": {
4360
+ "type": "number"
4361
+ },
4362
+ "centerY": {
4363
+ "type": "number"
4364
+ }
4365
+ },
4366
+ "required": [
4367
+ "left",
4368
+ "top",
4369
+ "right",
4370
+ "bottom"
4371
+ ],
4372
+ "additionalProperties": false
4250
4373
  },
4251
- "centerY": {
4252
- "type": "number"
4374
+ {
4375
+ "type": "array",
4376
+ "prefixItems": [
4377
+ {
4378
+ "type": "number"
4379
+ },
4380
+ {
4381
+ "type": "number"
4382
+ },
4383
+ {
4384
+ "type": "number"
4385
+ },
4386
+ {
4387
+ "type": "number"
4388
+ }
4389
+ ],
4390
+ "description": "Compact bounds tuple [left, top, right, bottom], emitted in place of the {left, top, right, bottom} object."
4253
4391
  }
4254
- },
4255
- "required": [
4256
- "left",
4257
- "top",
4258
- "right",
4259
- "bottom"
4260
4392
  ],
4261
- "additionalProperties": false,
4262
- "description": "Element bounds. Default: object {left, top, right, bottom} (+ optional centerX/centerY). Under --observe-result-compact: positional tuple [left, top, right, bottom]."
4393
+ "description": "Element bounds. Default: positional tuple [left, top, right, bottom]; the object {left, top, right, bottom} (+ optional centerX/centerY) is also schema-valid."
4263
4394
  },
4264
4395
  "reason": {
4265
4396
  "type": "string"
@@ -4642,7 +4773,7 @@
4642
4773
  "type": "number"
4643
4774
  }
4644
4775
  ],
4645
- "description": "Bounds as the compact [left, top, right, bottom] tuple — always this shape for skeleton entries, independent of the --observe-result-compact flag."
4776
+ "description": "Bounds as the compact [left, top, right, bottom] tuple — always this shape for skeleton entries."
4646
4777
  },
4647
4778
  "affordances": {
4648
4779
  "type": "array",
@@ -4786,35 +4917,57 @@
4786
4917
  "type": "object",
4787
4918
  "properties": {
4788
4919
  "bounds": {
4789
- "type": "object",
4790
- "properties": {
4791
- "left": {
4792
- "type": "number"
4793
- },
4794
- "top": {
4795
- "type": "number"
4796
- },
4797
- "right": {
4798
- "type": "number"
4799
- },
4800
- "bottom": {
4801
- "type": "number"
4802
- },
4803
- "centerX": {
4804
- "type": "number"
4920
+ "anyOf": [
4921
+ {
4922
+ "type": "object",
4923
+ "properties": {
4924
+ "left": {
4925
+ "type": "number"
4926
+ },
4927
+ "top": {
4928
+ "type": "number"
4929
+ },
4930
+ "right": {
4931
+ "type": "number"
4932
+ },
4933
+ "bottom": {
4934
+ "type": "number"
4935
+ },
4936
+ "centerX": {
4937
+ "type": "number"
4938
+ },
4939
+ "centerY": {
4940
+ "type": "number"
4941
+ }
4942
+ },
4943
+ "required": [
4944
+ "left",
4945
+ "top",
4946
+ "right",
4947
+ "bottom"
4948
+ ],
4949
+ "additionalProperties": false
4805
4950
  },
4806
- "centerY": {
4807
- "type": "number"
4951
+ {
4952
+ "type": "array",
4953
+ "prefixItems": [
4954
+ {
4955
+ "type": "number"
4956
+ },
4957
+ {
4958
+ "type": "number"
4959
+ },
4960
+ {
4961
+ "type": "number"
4962
+ },
4963
+ {
4964
+ "type": "number"
4965
+ }
4966
+ ],
4967
+ "description": "Compact bounds tuple [left, top, right, bottom], emitted in place of the {left, top, right, bottom} object."
4808
4968
  }
4809
- },
4810
- "required": [
4811
- "left",
4812
- "top",
4813
- "right",
4814
- "bottom"
4815
4969
  ],
4816
- "additionalProperties": false,
4817
- "description": "Element bounds. Default: object {left, top, right, bottom} (+ optional centerX/centerY). Under --observe-result-compact: positional tuple [left, top, right, bottom]."
4970
+ "description": "Element bounds. Default: positional tuple [left, top, right, bottom]; the object {left, top, right, bottom} (+ optional centerX/centerY) is also schema-valid."
4818
4971
  }
4819
4972
  },
4820
4973
  "additionalProperties": {}
@@ -4844,35 +4997,57 @@
4844
4997
  "type": "string"
4845
4998
  },
4846
4999
  "bounds": {
4847
- "type": "object",
4848
- "properties": {
4849
- "left": {
4850
- "type": "number"
4851
- },
4852
- "top": {
4853
- "type": "number"
4854
- },
4855
- "right": {
4856
- "type": "number"
4857
- },
4858
- "bottom": {
4859
- "type": "number"
4860
- },
4861
- "centerX": {
4862
- "type": "number"
5000
+ "anyOf": [
5001
+ {
5002
+ "type": "object",
5003
+ "properties": {
5004
+ "left": {
5005
+ "type": "number"
5006
+ },
5007
+ "top": {
5008
+ "type": "number"
5009
+ },
5010
+ "right": {
5011
+ "type": "number"
5012
+ },
5013
+ "bottom": {
5014
+ "type": "number"
5015
+ },
5016
+ "centerX": {
5017
+ "type": "number"
5018
+ },
5019
+ "centerY": {
5020
+ "type": "number"
5021
+ }
5022
+ },
5023
+ "required": [
5024
+ "left",
5025
+ "top",
5026
+ "right",
5027
+ "bottom"
5028
+ ],
5029
+ "additionalProperties": false
4863
5030
  },
4864
- "centerY": {
4865
- "type": "number"
5031
+ {
5032
+ "type": "array",
5033
+ "prefixItems": [
5034
+ {
5035
+ "type": "number"
5036
+ },
5037
+ {
5038
+ "type": "number"
5039
+ },
5040
+ {
5041
+ "type": "number"
5042
+ },
5043
+ {
5044
+ "type": "number"
5045
+ }
5046
+ ],
5047
+ "description": "Compact bounds tuple [left, top, right, bottom], emitted in place of the {left, top, right, bottom} object."
4866
5048
  }
4867
- },
4868
- "required": [
4869
- "left",
4870
- "top",
4871
- "right",
4872
- "bottom"
4873
5049
  ],
4874
- "additionalProperties": false,
4875
- "description": "Element bounds. Default: object {left, top, right, bottom} (+ optional centerX/centerY). Under --observe-result-compact: positional tuple [left, top, right, bottom]."
5050
+ "description": "Element bounds. Default: positional tuple [left, top, right, bottom]; the object {left, top, right, bottom} (+ optional centerX/centerY) is also schema-valid."
4876
5051
  },
4877
5052
  "indexInMatches": {
4878
5053
  "type": "integer",
@@ -4918,35 +5093,57 @@
4918
5093
  "type": "object",
4919
5094
  "properties": {
4920
5095
  "bounds": {
4921
- "type": "object",
4922
- "properties": {
4923
- "left": {
4924
- "type": "number"
4925
- },
4926
- "top": {
4927
- "type": "number"
4928
- },
4929
- "right": {
4930
- "type": "number"
4931
- },
4932
- "bottom": {
4933
- "type": "number"
4934
- },
4935
- "centerX": {
4936
- "type": "number"
5096
+ "anyOf": [
5097
+ {
5098
+ "type": "object",
5099
+ "properties": {
5100
+ "left": {
5101
+ "type": "number"
5102
+ },
5103
+ "top": {
5104
+ "type": "number"
5105
+ },
5106
+ "right": {
5107
+ "type": "number"
5108
+ },
5109
+ "bottom": {
5110
+ "type": "number"
5111
+ },
5112
+ "centerX": {
5113
+ "type": "number"
5114
+ },
5115
+ "centerY": {
5116
+ "type": "number"
5117
+ }
5118
+ },
5119
+ "required": [
5120
+ "left",
5121
+ "top",
5122
+ "right",
5123
+ "bottom"
5124
+ ],
5125
+ "additionalProperties": false
4937
5126
  },
4938
- "centerY": {
4939
- "type": "number"
5127
+ {
5128
+ "type": "array",
5129
+ "prefixItems": [
5130
+ {
5131
+ "type": "number"
5132
+ },
5133
+ {
5134
+ "type": "number"
5135
+ },
5136
+ {
5137
+ "type": "number"
5138
+ },
5139
+ {
5140
+ "type": "number"
5141
+ }
5142
+ ],
5143
+ "description": "Compact bounds tuple [left, top, right, bottom], emitted in place of the {left, top, right, bottom} object."
4940
5144
  }
4941
- },
4942
- "required": [
4943
- "left",
4944
- "top",
4945
- "right",
4946
- "bottom"
4947
5145
  ],
4948
- "additionalProperties": false,
4949
- "description": "Element bounds. Default: object {left, top, right, bottom} (+ optional centerX/centerY). Under --observe-result-compact: positional tuple [left, top, right, bottom]."
5146
+ "description": "Element bounds. Default: positional tuple [left, top, right, bottom]; the object {left, top, right, bottom} (+ optional centerX/centerY) is also schema-valid."
4950
5147
  },
4951
5148
  "text": {
4952
5149
  "type": "string"
@@ -5120,35 +5317,57 @@
5120
5317
  "type": "object",
5121
5318
  "properties": {
5122
5319
  "bounds": {
5123
- "type": "object",
5124
- "properties": {
5125
- "left": {
5126
- "type": "number"
5127
- },
5128
- "top": {
5129
- "type": "number"
5130
- },
5131
- "right": {
5132
- "type": "number"
5133
- },
5134
- "bottom": {
5135
- "type": "number"
5136
- },
5137
- "centerX": {
5138
- "type": "number"
5320
+ "anyOf": [
5321
+ {
5322
+ "type": "object",
5323
+ "properties": {
5324
+ "left": {
5325
+ "type": "number"
5326
+ },
5327
+ "top": {
5328
+ "type": "number"
5329
+ },
5330
+ "right": {
5331
+ "type": "number"
5332
+ },
5333
+ "bottom": {
5334
+ "type": "number"
5335
+ },
5336
+ "centerX": {
5337
+ "type": "number"
5338
+ },
5339
+ "centerY": {
5340
+ "type": "number"
5341
+ }
5342
+ },
5343
+ "required": [
5344
+ "left",
5345
+ "top",
5346
+ "right",
5347
+ "bottom"
5348
+ ],
5349
+ "additionalProperties": false
5139
5350
  },
5140
- "centerY": {
5141
- "type": "number"
5351
+ {
5352
+ "type": "array",
5353
+ "prefixItems": [
5354
+ {
5355
+ "type": "number"
5356
+ },
5357
+ {
5358
+ "type": "number"
5359
+ },
5360
+ {
5361
+ "type": "number"
5362
+ },
5363
+ {
5364
+ "type": "number"
5365
+ }
5366
+ ],
5367
+ "description": "Compact bounds tuple [left, top, right, bottom], emitted in place of the {left, top, right, bottom} object."
5142
5368
  }
5143
- },
5144
- "required": [
5145
- "left",
5146
- "top",
5147
- "right",
5148
- "bottom"
5149
5369
  ],
5150
- "additionalProperties": false,
5151
- "description": "Element bounds. Default: object {left, top, right, bottom} (+ optional centerX/centerY). Under --observe-result-compact: positional tuple [left, top, right, bottom]."
5370
+ "description": "Element bounds. Default: positional tuple [left, top, right, bottom]; the object {left, top, right, bottom} (+ optional centerX/centerY) is also schema-valid."
5152
5371
  },
5153
5372
  "text": {
5154
5373
  "type": "string"
@@ -5322,35 +5541,57 @@
5322
5541
  "type": "object",
5323
5542
  "properties": {
5324
5543
  "bounds": {
5325
- "type": "object",
5326
- "properties": {
5327
- "left": {
5328
- "type": "number"
5329
- },
5330
- "top": {
5331
- "type": "number"
5332
- },
5333
- "right": {
5334
- "type": "number"
5335
- },
5336
- "bottom": {
5337
- "type": "number"
5338
- },
5339
- "centerX": {
5340
- "type": "number"
5544
+ "anyOf": [
5545
+ {
5546
+ "type": "object",
5547
+ "properties": {
5548
+ "left": {
5549
+ "type": "number"
5550
+ },
5551
+ "top": {
5552
+ "type": "number"
5553
+ },
5554
+ "right": {
5555
+ "type": "number"
5556
+ },
5557
+ "bottom": {
5558
+ "type": "number"
5559
+ },
5560
+ "centerX": {
5561
+ "type": "number"
5562
+ },
5563
+ "centerY": {
5564
+ "type": "number"
5565
+ }
5566
+ },
5567
+ "required": [
5568
+ "left",
5569
+ "top",
5570
+ "right",
5571
+ "bottom"
5572
+ ],
5573
+ "additionalProperties": false
5341
5574
  },
5342
- "centerY": {
5343
- "type": "number"
5575
+ {
5576
+ "type": "array",
5577
+ "prefixItems": [
5578
+ {
5579
+ "type": "number"
5580
+ },
5581
+ {
5582
+ "type": "number"
5583
+ },
5584
+ {
5585
+ "type": "number"
5586
+ },
5587
+ {
5588
+ "type": "number"
5589
+ }
5590
+ ],
5591
+ "description": "Compact bounds tuple [left, top, right, bottom], emitted in place of the {left, top, right, bottom} object."
5344
5592
  }
5345
- },
5346
- "required": [
5347
- "left",
5348
- "top",
5349
- "right",
5350
- "bottom"
5351
5593
  ],
5352
- "additionalProperties": false,
5353
- "description": "Element bounds. Default: object {left, top, right, bottom} (+ optional centerX/centerY). Under --observe-result-compact: positional tuple [left, top, right, bottom]."
5594
+ "description": "Element bounds. Default: positional tuple [left, top, right, bottom]; the object {left, top, right, bottom} (+ optional centerX/centerY) is also schema-valid."
5354
5595
  },
5355
5596
  "text": {
5356
5597
  "type": "string"
@@ -5542,35 +5783,57 @@
5542
5783
  "type": "object",
5543
5784
  "properties": {
5544
5785
  "bounds": {
5545
- "type": "object",
5546
- "properties": {
5547
- "left": {
5548
- "type": "number"
5549
- },
5550
- "top": {
5551
- "type": "number"
5552
- },
5553
- "right": {
5554
- "type": "number"
5555
- },
5556
- "bottom": {
5557
- "type": "number"
5558
- },
5559
- "centerX": {
5560
- "type": "number"
5786
+ "anyOf": [
5787
+ {
5788
+ "type": "object",
5789
+ "properties": {
5790
+ "left": {
5791
+ "type": "number"
5792
+ },
5793
+ "top": {
5794
+ "type": "number"
5795
+ },
5796
+ "right": {
5797
+ "type": "number"
5798
+ },
5799
+ "bottom": {
5800
+ "type": "number"
5801
+ },
5802
+ "centerX": {
5803
+ "type": "number"
5804
+ },
5805
+ "centerY": {
5806
+ "type": "number"
5807
+ }
5808
+ },
5809
+ "required": [
5810
+ "left",
5811
+ "top",
5812
+ "right",
5813
+ "bottom"
5814
+ ],
5815
+ "additionalProperties": false
5561
5816
  },
5562
- "centerY": {
5563
- "type": "number"
5817
+ {
5818
+ "type": "array",
5819
+ "prefixItems": [
5820
+ {
5821
+ "type": "number"
5822
+ },
5823
+ {
5824
+ "type": "number"
5825
+ },
5826
+ {
5827
+ "type": "number"
5828
+ },
5829
+ {
5830
+ "type": "number"
5831
+ }
5832
+ ],
5833
+ "description": "Compact bounds tuple [left, top, right, bottom], emitted in place of the {left, top, right, bottom} object."
5564
5834
  }
5565
- },
5566
- "required": [
5567
- "left",
5568
- "top",
5569
- "right",
5570
- "bottom"
5571
5835
  ],
5572
- "additionalProperties": false,
5573
- "description": "Element bounds. Default: object {left, top, right, bottom} (+ optional centerX/centerY). Under --observe-result-compact: positional tuple [left, top, right, bottom]."
5836
+ "description": "Element bounds. Default: positional tuple [left, top, right, bottom]; the object {left, top, right, bottom} (+ optional centerX/centerY) is also schema-valid."
5574
5837
  },
5575
5838
  "text": {
5576
5839
  "type": "string"
@@ -5746,35 +6009,57 @@
5746
6009
  "type": "object",
5747
6010
  "properties": {
5748
6011
  "bounds": {
5749
- "type": "object",
5750
- "properties": {
5751
- "left": {
5752
- "type": "number"
5753
- },
5754
- "top": {
5755
- "type": "number"
5756
- },
5757
- "right": {
5758
- "type": "number"
5759
- },
5760
- "bottom": {
5761
- "type": "number"
5762
- },
5763
- "centerX": {
5764
- "type": "number"
6012
+ "anyOf": [
6013
+ {
6014
+ "type": "object",
6015
+ "properties": {
6016
+ "left": {
6017
+ "type": "number"
6018
+ },
6019
+ "top": {
6020
+ "type": "number"
6021
+ },
6022
+ "right": {
6023
+ "type": "number"
6024
+ },
6025
+ "bottom": {
6026
+ "type": "number"
6027
+ },
6028
+ "centerX": {
6029
+ "type": "number"
6030
+ },
6031
+ "centerY": {
6032
+ "type": "number"
6033
+ }
6034
+ },
6035
+ "required": [
6036
+ "left",
6037
+ "top",
6038
+ "right",
6039
+ "bottom"
6040
+ ],
6041
+ "additionalProperties": false
5765
6042
  },
5766
- "centerY": {
5767
- "type": "number"
6043
+ {
6044
+ "type": "array",
6045
+ "prefixItems": [
6046
+ {
6047
+ "type": "number"
6048
+ },
6049
+ {
6050
+ "type": "number"
6051
+ },
6052
+ {
6053
+ "type": "number"
6054
+ },
6055
+ {
6056
+ "type": "number"
6057
+ }
6058
+ ],
6059
+ "description": "Compact bounds tuple [left, top, right, bottom], emitted in place of the {left, top, right, bottom} object."
5768
6060
  }
5769
- },
5770
- "required": [
5771
- "left",
5772
- "top",
5773
- "right",
5774
- "bottom"
5775
6061
  ],
5776
- "additionalProperties": false,
5777
- "description": "Element bounds. Default: object {left, top, right, bottom} (+ optional centerX/centerY). Under --observe-result-compact: positional tuple [left, top, right, bottom]."
6062
+ "description": "Element bounds. Default: positional tuple [left, top, right, bottom]; the object {left, top, right, bottom} (+ optional centerX/centerY) is also schema-valid."
5778
6063
  },
5779
6064
  "text": {
5780
6065
  "type": "string"
@@ -6127,13 +6412,181 @@
6127
6412
  "keyguardShowing": {
6128
6413
  "type": "boolean"
6129
6414
  },
6130
- "secure": {
6131
- "type": "boolean"
6415
+ "secure": {
6416
+ "type": "boolean"
6417
+ }
6418
+ },
6419
+ "required": [
6420
+ "locked",
6421
+ "keyguardShowing"
6422
+ ],
6423
+ "additionalProperties": false
6424
+ },
6425
+ "perfSnapshot": {
6426
+ "type": "object",
6427
+ "properties": {
6428
+ "windowMs": {
6429
+ "type": "number"
6430
+ },
6431
+ "sampleCount": {
6432
+ "type": "integer",
6433
+ "minimum": 0,
6434
+ "maximum": 9007199254740991
6435
+ },
6436
+ "oldestSampleAgeMs": {
6437
+ "anyOf": [
6438
+ {
6439
+ "type": "number"
6440
+ },
6441
+ {
6442
+ "type": "null"
6443
+ }
6444
+ ]
6445
+ },
6446
+ "fps": {
6447
+ "anyOf": [
6448
+ {
6449
+ "type": "object",
6450
+ "properties": {
6451
+ "p50": {
6452
+ "type": "number"
6453
+ },
6454
+ "p90": {
6455
+ "type": "number"
6456
+ },
6457
+ "p95": {
6458
+ "type": "number"
6459
+ },
6460
+ "p99": {
6461
+ "type": "number"
6462
+ }
6463
+ },
6464
+ "required": [
6465
+ "p50",
6466
+ "p90",
6467
+ "p95",
6468
+ "p99"
6469
+ ],
6470
+ "additionalProperties": false
6471
+ },
6472
+ {
6473
+ "type": "null"
6474
+ }
6475
+ ]
6476
+ },
6477
+ "jank": {
6478
+ "anyOf": [
6479
+ {
6480
+ "type": "object",
6481
+ "properties": {
6482
+ "total": {
6483
+ "type": "number"
6484
+ },
6485
+ "perSecond": {
6486
+ "anyOf": [
6487
+ {
6488
+ "type": "number"
6489
+ },
6490
+ {
6491
+ "type": "null"
6492
+ }
6493
+ ]
6494
+ }
6495
+ },
6496
+ "required": [
6497
+ "total",
6498
+ "perSecond"
6499
+ ],
6500
+ "additionalProperties": false
6501
+ },
6502
+ {
6503
+ "type": "null"
6504
+ }
6505
+ ]
6506
+ },
6507
+ "touchLatencyMs": {
6508
+ "anyOf": [
6509
+ {
6510
+ "type": "object",
6511
+ "properties": {
6512
+ "p50": {
6513
+ "type": "number"
6514
+ },
6515
+ "p95": {
6516
+ "type": "number"
6517
+ },
6518
+ "latest": {
6519
+ "type": "number"
6520
+ }
6521
+ },
6522
+ "required": [
6523
+ "p50",
6524
+ "p95",
6525
+ "latest"
6526
+ ],
6527
+ "additionalProperties": false
6528
+ },
6529
+ {
6530
+ "type": "null"
6531
+ }
6532
+ ]
6533
+ },
6534
+ "cpu": {
6535
+ "anyOf": [
6536
+ {
6537
+ "type": "object",
6538
+ "properties": {
6539
+ "avg": {
6540
+ "type": "number"
6541
+ },
6542
+ "latest": {
6543
+ "type": "number"
6544
+ }
6545
+ },
6546
+ "required": [
6547
+ "avg",
6548
+ "latest"
6549
+ ],
6550
+ "additionalProperties": false
6551
+ },
6552
+ {
6553
+ "type": "null"
6554
+ }
6555
+ ]
6556
+ },
6557
+ "memoryMb": {
6558
+ "anyOf": [
6559
+ {
6560
+ "type": "object",
6561
+ "properties": {
6562
+ "avg": {
6563
+ "type": "number"
6564
+ },
6565
+ "latest": {
6566
+ "type": "number"
6567
+ }
6568
+ },
6569
+ "required": [
6570
+ "avg",
6571
+ "latest"
6572
+ ],
6573
+ "additionalProperties": false
6574
+ },
6575
+ {
6576
+ "type": "null"
6577
+ }
6578
+ ]
6132
6579
  }
6133
6580
  },
6134
6581
  "required": [
6135
- "locked",
6136
- "keyguardShowing"
6582
+ "windowMs",
6583
+ "sampleCount",
6584
+ "oldestSampleAgeMs",
6585
+ "fps",
6586
+ "jank",
6587
+ "touchLatencyMs",
6588
+ "cpu",
6589
+ "memoryMb"
6137
6590
  ],
6138
6591
  "additionalProperties": false
6139
6592
  },
@@ -6173,35 +6626,57 @@
6173
6626
  "maximum": 9007199254740991
6174
6627
  },
6175
6628
  "regionPx": {
6176
- "type": "object",
6177
- "properties": {
6178
- "left": {
6179
- "type": "number"
6180
- },
6181
- "top": {
6182
- "type": "number"
6183
- },
6184
- "right": {
6185
- "type": "number"
6186
- },
6187
- "bottom": {
6188
- "type": "number"
6189
- },
6190
- "centerX": {
6191
- "type": "number"
6629
+ "anyOf": [
6630
+ {
6631
+ "type": "object",
6632
+ "properties": {
6633
+ "left": {
6634
+ "type": "number"
6635
+ },
6636
+ "top": {
6637
+ "type": "number"
6638
+ },
6639
+ "right": {
6640
+ "type": "number"
6641
+ },
6642
+ "bottom": {
6643
+ "type": "number"
6644
+ },
6645
+ "centerX": {
6646
+ "type": "number"
6647
+ },
6648
+ "centerY": {
6649
+ "type": "number"
6650
+ }
6651
+ },
6652
+ "required": [
6653
+ "left",
6654
+ "top",
6655
+ "right",
6656
+ "bottom"
6657
+ ],
6658
+ "additionalProperties": false
6192
6659
  },
6193
- "centerY": {
6194
- "type": "number"
6660
+ {
6661
+ "type": "array",
6662
+ "prefixItems": [
6663
+ {
6664
+ "type": "number"
6665
+ },
6666
+ {
6667
+ "type": "number"
6668
+ },
6669
+ {
6670
+ "type": "number"
6671
+ },
6672
+ {
6673
+ "type": "number"
6674
+ }
6675
+ ],
6676
+ "description": "Compact bounds tuple [left, top, right, bottom], emitted in place of the {left, top, right, bottom} object."
6195
6677
  }
6196
- },
6197
- "required": [
6198
- "left",
6199
- "top",
6200
- "right",
6201
- "bottom"
6202
6678
  ],
6203
- "additionalProperties": false,
6204
- "description": "Element bounds. Default: object {left, top, right, bottom} (+ optional centerX/centerY). Under --observe-result-compact: positional tuple [left, top, right, bottom]."
6679
+ "description": "Element bounds. Default: positional tuple [left, top, right, bottom]; the object {left, top, right, bottom} (+ optional centerX/centerY) is also schema-valid."
6205
6680
  },
6206
6681
  "focus": {
6207
6682
  "type": "object",
@@ -8586,35 +9061,57 @@
8586
9061
  "type": "object",
8587
9062
  "properties": {
8588
9063
  "bounds": {
8589
- "type": "object",
8590
- "properties": {
8591
- "left": {
8592
- "type": "number"
8593
- },
8594
- "top": {
8595
- "type": "number"
8596
- },
8597
- "right": {
8598
- "type": "number"
8599
- },
8600
- "bottom": {
8601
- "type": "number"
8602
- },
8603
- "centerX": {
8604
- "type": "number"
9064
+ "anyOf": [
9065
+ {
9066
+ "type": "object",
9067
+ "properties": {
9068
+ "left": {
9069
+ "type": "number"
9070
+ },
9071
+ "top": {
9072
+ "type": "number"
9073
+ },
9074
+ "right": {
9075
+ "type": "number"
9076
+ },
9077
+ "bottom": {
9078
+ "type": "number"
9079
+ },
9080
+ "centerX": {
9081
+ "type": "number"
9082
+ },
9083
+ "centerY": {
9084
+ "type": "number"
9085
+ }
9086
+ },
9087
+ "required": [
9088
+ "left",
9089
+ "top",
9090
+ "right",
9091
+ "bottom"
9092
+ ],
9093
+ "additionalProperties": false
8605
9094
  },
8606
- "centerY": {
8607
- "type": "number"
9095
+ {
9096
+ "type": "array",
9097
+ "prefixItems": [
9098
+ {
9099
+ "type": "number"
9100
+ },
9101
+ {
9102
+ "type": "number"
9103
+ },
9104
+ {
9105
+ "type": "number"
9106
+ },
9107
+ {
9108
+ "type": "number"
9109
+ }
9110
+ ],
9111
+ "description": "Compact bounds tuple [left, top, right, bottom], emitted in place of the {left, top, right, bottom} object."
8608
9112
  }
8609
- },
8610
- "required": [
8611
- "left",
8612
- "top",
8613
- "right",
8614
- "bottom"
8615
9113
  ],
8616
- "additionalProperties": false,
8617
- "description": "Element bounds. Default: object {left, top, right, bottom} (+ optional centerX/centerY). Under --observe-result-compact: positional tuple [left, top, right, bottom]."
9114
+ "description": "Element bounds. Default: positional tuple [left, top, right, bottom]; the object {left, top, right, bottom} (+ optional centerX/centerY) is also schema-valid."
8618
9115
  },
8619
9116
  "text": {
8620
9117
  "type": "string"
@@ -8804,35 +9301,57 @@
8804
9301
  "type": "string"
8805
9302
  },
8806
9303
  "bounds": {
8807
- "type": "object",
8808
- "properties": {
8809
- "left": {
8810
- "type": "number"
8811
- },
8812
- "top": {
8813
- "type": "number"
8814
- },
8815
- "right": {
8816
- "type": "number"
8817
- },
8818
- "bottom": {
8819
- "type": "number"
8820
- },
8821
- "centerX": {
8822
- "type": "number"
9304
+ "anyOf": [
9305
+ {
9306
+ "type": "object",
9307
+ "properties": {
9308
+ "left": {
9309
+ "type": "number"
9310
+ },
9311
+ "top": {
9312
+ "type": "number"
9313
+ },
9314
+ "right": {
9315
+ "type": "number"
9316
+ },
9317
+ "bottom": {
9318
+ "type": "number"
9319
+ },
9320
+ "centerX": {
9321
+ "type": "number"
9322
+ },
9323
+ "centerY": {
9324
+ "type": "number"
9325
+ }
9326
+ },
9327
+ "required": [
9328
+ "left",
9329
+ "top",
9330
+ "right",
9331
+ "bottom"
9332
+ ],
9333
+ "additionalProperties": false
8823
9334
  },
8824
- "centerY": {
8825
- "type": "number"
9335
+ {
9336
+ "type": "array",
9337
+ "prefixItems": [
9338
+ {
9339
+ "type": "number"
9340
+ },
9341
+ {
9342
+ "type": "number"
9343
+ },
9344
+ {
9345
+ "type": "number"
9346
+ },
9347
+ {
9348
+ "type": "number"
9349
+ }
9350
+ ],
9351
+ "description": "Compact bounds tuple [left, top, right, bottom], emitted in place of the {left, top, right, bottom} object."
8826
9352
  }
8827
- },
8828
- "required": [
8829
- "left",
8830
- "top",
8831
- "right",
8832
- "bottom"
8833
9353
  ],
8834
- "additionalProperties": false,
8835
- "description": "Element bounds. Default: object {left, top, right, bottom} (+ optional centerX/centerY). Under --observe-result-compact: positional tuple [left, top, right, bottom]."
9354
+ "description": "Element bounds. Default: positional tuple [left, top, right, bottom]; the object {left, top, right, bottom} (+ optional centerX/centerY) is also schema-valid."
8836
9355
  },
8837
9356
  "indexInMatches": {
8838
9357
  "type": "integer",
@@ -8878,35 +9397,57 @@
8878
9397
  "type": "object",
8879
9398
  "properties": {
8880
9399
  "bounds": {
8881
- "type": "object",
8882
- "properties": {
8883
- "left": {
8884
- "type": "number"
8885
- },
8886
- "top": {
8887
- "type": "number"
8888
- },
8889
- "right": {
8890
- "type": "number"
8891
- },
8892
- "bottom": {
8893
- "type": "number"
8894
- },
8895
- "centerX": {
8896
- "type": "number"
9400
+ "anyOf": [
9401
+ {
9402
+ "type": "object",
9403
+ "properties": {
9404
+ "left": {
9405
+ "type": "number"
9406
+ },
9407
+ "top": {
9408
+ "type": "number"
9409
+ },
9410
+ "right": {
9411
+ "type": "number"
9412
+ },
9413
+ "bottom": {
9414
+ "type": "number"
9415
+ },
9416
+ "centerX": {
9417
+ "type": "number"
9418
+ },
9419
+ "centerY": {
9420
+ "type": "number"
9421
+ }
9422
+ },
9423
+ "required": [
9424
+ "left",
9425
+ "top",
9426
+ "right",
9427
+ "bottom"
9428
+ ],
9429
+ "additionalProperties": false
8897
9430
  },
8898
- "centerY": {
8899
- "type": "number"
9431
+ {
9432
+ "type": "array",
9433
+ "prefixItems": [
9434
+ {
9435
+ "type": "number"
9436
+ },
9437
+ {
9438
+ "type": "number"
9439
+ },
9440
+ {
9441
+ "type": "number"
9442
+ },
9443
+ {
9444
+ "type": "number"
9445
+ }
9446
+ ],
9447
+ "description": "Compact bounds tuple [left, top, right, bottom], emitted in place of the {left, top, right, bottom} object."
8900
9448
  }
8901
- },
8902
- "required": [
8903
- "left",
8904
- "top",
8905
- "right",
8906
- "bottom"
8907
9449
  ],
8908
- "additionalProperties": false,
8909
- "description": "Element bounds. Default: object {left, top, right, bottom} (+ optional centerX/centerY). Under --observe-result-compact: positional tuple [left, top, right, bottom]."
9450
+ "description": "Element bounds. Default: positional tuple [left, top, right, bottom]; the object {left, top, right, bottom} (+ optional centerX/centerY) is also schema-valid."
8910
9451
  },
8911
9452
  "text": {
8912
9453
  "type": "string"
@@ -9080,35 +9621,57 @@
9080
9621
  "type": "object",
9081
9622
  "properties": {
9082
9623
  "bounds": {
9083
- "type": "object",
9084
- "properties": {
9085
- "left": {
9086
- "type": "number"
9087
- },
9088
- "top": {
9089
- "type": "number"
9090
- },
9091
- "right": {
9092
- "type": "number"
9093
- },
9094
- "bottom": {
9095
- "type": "number"
9096
- },
9097
- "centerX": {
9098
- "type": "number"
9624
+ "anyOf": [
9625
+ {
9626
+ "type": "object",
9627
+ "properties": {
9628
+ "left": {
9629
+ "type": "number"
9630
+ },
9631
+ "top": {
9632
+ "type": "number"
9633
+ },
9634
+ "right": {
9635
+ "type": "number"
9636
+ },
9637
+ "bottom": {
9638
+ "type": "number"
9639
+ },
9640
+ "centerX": {
9641
+ "type": "number"
9642
+ },
9643
+ "centerY": {
9644
+ "type": "number"
9645
+ }
9646
+ },
9647
+ "required": [
9648
+ "left",
9649
+ "top",
9650
+ "right",
9651
+ "bottom"
9652
+ ],
9653
+ "additionalProperties": false
9099
9654
  },
9100
- "centerY": {
9101
- "type": "number"
9655
+ {
9656
+ "type": "array",
9657
+ "prefixItems": [
9658
+ {
9659
+ "type": "number"
9660
+ },
9661
+ {
9662
+ "type": "number"
9663
+ },
9664
+ {
9665
+ "type": "number"
9666
+ },
9667
+ {
9668
+ "type": "number"
9669
+ }
9670
+ ],
9671
+ "description": "Compact bounds tuple [left, top, right, bottom], emitted in place of the {left, top, right, bottom} object."
9102
9672
  }
9103
- },
9104
- "required": [
9105
- "left",
9106
- "top",
9107
- "right",
9108
- "bottom"
9109
9673
  ],
9110
- "additionalProperties": false,
9111
- "description": "Element bounds. Default: object {left, top, right, bottom} (+ optional centerX/centerY). Under --observe-result-compact: positional tuple [left, top, right, bottom]."
9674
+ "description": "Element bounds. Default: positional tuple [left, top, right, bottom]; the object {left, top, right, bottom} (+ optional centerX/centerY) is also schema-valid."
9112
9675
  },
9113
9676
  "text": {
9114
9677
  "type": "string"
@@ -9656,35 +10219,57 @@
9656
10219
  "type": "string"
9657
10220
  },
9658
10221
  "bounds": {
9659
- "type": "object",
9660
- "properties": {
9661
- "left": {
9662
- "type": "number"
9663
- },
9664
- "top": {
9665
- "type": "number"
9666
- },
9667
- "right": {
9668
- "type": "number"
9669
- },
9670
- "bottom": {
9671
- "type": "number"
9672
- },
9673
- "centerX": {
9674
- "type": "number"
10222
+ "anyOf": [
10223
+ {
10224
+ "type": "object",
10225
+ "properties": {
10226
+ "left": {
10227
+ "type": "number"
10228
+ },
10229
+ "top": {
10230
+ "type": "number"
10231
+ },
10232
+ "right": {
10233
+ "type": "number"
10234
+ },
10235
+ "bottom": {
10236
+ "type": "number"
10237
+ },
10238
+ "centerX": {
10239
+ "type": "number"
10240
+ },
10241
+ "centerY": {
10242
+ "type": "number"
10243
+ }
10244
+ },
10245
+ "required": [
10246
+ "left",
10247
+ "top",
10248
+ "right",
10249
+ "bottom"
10250
+ ],
10251
+ "additionalProperties": false
9675
10252
  },
9676
- "centerY": {
9677
- "type": "number"
10253
+ {
10254
+ "type": "array",
10255
+ "prefixItems": [
10256
+ {
10257
+ "type": "number"
10258
+ },
10259
+ {
10260
+ "type": "number"
10261
+ },
10262
+ {
10263
+ "type": "number"
10264
+ },
10265
+ {
10266
+ "type": "number"
10267
+ }
10268
+ ],
10269
+ "description": "Compact bounds tuple [left, top, right, bottom], emitted in place of the {left, top, right, bottom} object."
9678
10270
  }
9679
- },
9680
- "required": [
9681
- "left",
9682
- "top",
9683
- "right",
9684
- "bottom"
9685
10271
  ],
9686
- "additionalProperties": false,
9687
- "description": "Element bounds. Default: object {left, top, right, bottom} (+ optional centerX/centerY). Under --observe-result-compact: positional tuple [left, top, right, bottom]."
10272
+ "description": "Element bounds. Default: positional tuple [left, top, right, bottom]; the object {left, top, right, bottom} (+ optional centerX/centerY) is also schema-valid."
9688
10273
  },
9689
10274
  "indexInMatches": {
9690
10275
  "type": "integer",
@@ -9740,35 +10325,57 @@
9740
10325
  "type": "string"
9741
10326
  },
9742
10327
  "bounds": {
9743
- "type": "object",
9744
- "properties": {
9745
- "left": {
9746
- "type": "number"
9747
- },
9748
- "top": {
9749
- "type": "number"
9750
- },
9751
- "right": {
9752
- "type": "number"
9753
- },
9754
- "bottom": {
9755
- "type": "number"
9756
- },
9757
- "centerX": {
9758
- "type": "number"
10328
+ "anyOf": [
10329
+ {
10330
+ "type": "object",
10331
+ "properties": {
10332
+ "left": {
10333
+ "type": "number"
10334
+ },
10335
+ "top": {
10336
+ "type": "number"
10337
+ },
10338
+ "right": {
10339
+ "type": "number"
10340
+ },
10341
+ "bottom": {
10342
+ "type": "number"
10343
+ },
10344
+ "centerX": {
10345
+ "type": "number"
10346
+ },
10347
+ "centerY": {
10348
+ "type": "number"
10349
+ }
10350
+ },
10351
+ "required": [
10352
+ "left",
10353
+ "top",
10354
+ "right",
10355
+ "bottom"
10356
+ ],
10357
+ "additionalProperties": false
9759
10358
  },
9760
- "centerY": {
9761
- "type": "number"
10359
+ {
10360
+ "type": "array",
10361
+ "prefixItems": [
10362
+ {
10363
+ "type": "number"
10364
+ },
10365
+ {
10366
+ "type": "number"
10367
+ },
10368
+ {
10369
+ "type": "number"
10370
+ },
10371
+ {
10372
+ "type": "number"
10373
+ }
10374
+ ],
10375
+ "description": "Compact bounds tuple [left, top, right, bottom], emitted in place of the {left, top, right, bottom} object."
9762
10376
  }
9763
- },
9764
- "required": [
9765
- "left",
9766
- "top",
9767
- "right",
9768
- "bottom"
9769
10377
  ],
9770
- "additionalProperties": false,
9771
- "description": "Element bounds. Default: object {left, top, right, bottom} (+ optional centerX/centerY). Under --observe-result-compact: positional tuple [left, top, right, bottom]."
10378
+ "description": "Element bounds. Default: positional tuple [left, top, right, bottom]; the object {left, top, right, bottom} (+ optional centerX/centerY) is also schema-valid."
9772
10379
  },
9773
10380
  "indexInMatches": {
9774
10381
  "type": "integer",
@@ -9861,35 +10468,57 @@
9861
10468
  "type": "object",
9862
10469
  "properties": {
9863
10470
  "bounds": {
9864
- "type": "object",
9865
- "properties": {
9866
- "left": {
9867
- "type": "number"
9868
- },
9869
- "top": {
9870
- "type": "number"
9871
- },
9872
- "right": {
9873
- "type": "number"
9874
- },
9875
- "bottom": {
9876
- "type": "number"
9877
- },
9878
- "centerX": {
9879
- "type": "number"
10471
+ "anyOf": [
10472
+ {
10473
+ "type": "object",
10474
+ "properties": {
10475
+ "left": {
10476
+ "type": "number"
10477
+ },
10478
+ "top": {
10479
+ "type": "number"
10480
+ },
10481
+ "right": {
10482
+ "type": "number"
10483
+ },
10484
+ "bottom": {
10485
+ "type": "number"
10486
+ },
10487
+ "centerX": {
10488
+ "type": "number"
10489
+ },
10490
+ "centerY": {
10491
+ "type": "number"
10492
+ }
10493
+ },
10494
+ "required": [
10495
+ "left",
10496
+ "top",
10497
+ "right",
10498
+ "bottom"
10499
+ ],
10500
+ "additionalProperties": false
9880
10501
  },
9881
- "centerY": {
9882
- "type": "number"
10502
+ {
10503
+ "type": "array",
10504
+ "prefixItems": [
10505
+ {
10506
+ "type": "number"
10507
+ },
10508
+ {
10509
+ "type": "number"
10510
+ },
10511
+ {
10512
+ "type": "number"
10513
+ },
10514
+ {
10515
+ "type": "number"
10516
+ }
10517
+ ],
10518
+ "description": "Compact bounds tuple [left, top, right, bottom], emitted in place of the {left, top, right, bottom} object."
9883
10519
  }
9884
- },
9885
- "required": [
9886
- "left",
9887
- "top",
9888
- "right",
9889
- "bottom"
9890
10520
  ],
9891
- "additionalProperties": false,
9892
- "description": "Element bounds. Default: object {left, top, right, bottom} (+ optional centerX/centerY). Under --observe-result-compact: positional tuple [left, top, right, bottom]."
10521
+ "description": "Element bounds. Default: positional tuple [left, top, right, bottom]; the object {left, top, right, bottom} (+ optional centerX/centerY) is also schema-valid."
9893
10522
  },
9894
10523
  "text": {
9895
10524
  "type": "string"