@superdoc-dev/sdk 1.7.0 → 1.8.0-next.10

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.
@@ -2056,15 +2056,103 @@ const CONTRACT = {
2056
2056
  },
2057
2057
  "type": {
2058
2058
  "type": "string",
2059
- "description": "Block type: paragraph, heading, listItem, table, image, etc."
2059
+ "description": "Block type: paragraph, heading, listItem, image, tableOfContents."
2060
2060
  },
2061
2061
  "text": {
2062
2062
  "type": "string",
2063
2063
  "description": "Full plain text content of the block."
2064
2064
  },
2065
+ "textSpans": {
2066
+ "type": "array",
2067
+ "description": "Block text broken into runs with tracked-change marks preserved per run. Present only when the block contains at least one tracked change. Concatenating span text yields `text`.",
2068
+ "items": {
2069
+ "type": "object",
2070
+ "properties": {
2071
+ "text": {
2072
+ "type": "string",
2073
+ "description": "Raw text of the run."
2074
+ },
2075
+ "trackedChanges": {
2076
+ "type": "array",
2077
+ "description": "Tracked-change marks applied to this run.",
2078
+ "items": {
2079
+ "type": "object",
2080
+ "properties": {
2081
+ "entityId": {
2082
+ "type": "string",
2083
+ "description": "Tracked change entity ID matching an entry in trackedChanges[]."
2084
+ },
2085
+ "type": {
2086
+ "type": "string",
2087
+ "enum": [
2088
+ "insert",
2089
+ "delete",
2090
+ "format"
2091
+ ]
2092
+ }
2093
+ },
2094
+ "additionalProperties": false,
2095
+ "required": [
2096
+ "entityId",
2097
+ "type"
2098
+ ]
2099
+ }
2100
+ }
2101
+ },
2102
+ "additionalProperties": false,
2103
+ "required": [
2104
+ "text"
2105
+ ]
2106
+ }
2107
+ },
2065
2108
  "headingLevel": {
2066
2109
  "type": "integer",
2067
- "description": "Heading level (16). Only present for headings."
2110
+ "description": "Heading level (1-6). Only present for headings."
2111
+ },
2112
+ "tableContext": {
2113
+ "type": "object",
2114
+ "properties": {
2115
+ "tableOrdinal": {
2116
+ "type": "integer",
2117
+ "description": "0-based table ordinal, unique within one extract() result."
2118
+ },
2119
+ "parentTableOrdinal": {
2120
+ "type": "integer",
2121
+ "description": "Ordinal of the parent table when the containing table is nested."
2122
+ },
2123
+ "parentRowIndex": {
2124
+ "type": "integer",
2125
+ "description": "Row index in the parent table. Set with parentTableOrdinal."
2126
+ },
2127
+ "parentColumnIndex": {
2128
+ "type": "integer",
2129
+ "description": "Column index in the parent table. Set with parentTableOrdinal."
2130
+ },
2131
+ "rowIndex": {
2132
+ "type": "integer",
2133
+ "description": "0-based row index of the containing cell."
2134
+ },
2135
+ "columnIndex": {
2136
+ "type": "integer",
2137
+ "description": "0-based logical grid column, not the row child order."
2138
+ },
2139
+ "rowspan": {
2140
+ "type": "integer",
2141
+ "description": "Number of rows the cell spans."
2142
+ },
2143
+ "colspan": {
2144
+ "type": "integer",
2145
+ "description": "Number of columns the cell spans."
2146
+ }
2147
+ },
2148
+ "additionalProperties": false,
2149
+ "required": [
2150
+ "tableOrdinal",
2151
+ "rowIndex",
2152
+ "columnIndex",
2153
+ "rowspan",
2154
+ "colspan"
2155
+ ]
2068
2156
  }
2069
2157
  },
2070
2158
  "additionalProperties": false,
@@ -2122,7 +2210,7 @@ const CONTRACT = {
2122
2210
  "properties": {
2123
2211
  "entityId": {
2124
2212
  "type": "string",
2125
- "description": "Tracked change entity ID pass to scrollToElement() for navigation."
2213
+ "description": "Tracked change entity ID. Pass to scrollToElement() for navigation."
2126
2214
  },
2127
2215
  "type": {
2128
2216
  "type": "string",
@@ -2130,11 +2218,37 @@ const CONTRACT = {
2130
2218
  "insert",
2131
2219
  "delete",
2132
2220
  "format"
2133
- ]
2221
+ ],
2222
+ "description": "Aggregate type at the entity level. In paired replacement mode, a delete+insert pair shares one entity and this collapses to 'insert'; per-half type lives on block.textSpans[].trackedChanges[]."
2223
+ },
2224
+ "blockIds": {
2225
+ "type": "array",
2226
+ "description": "Block IDs whose textSpans carry this change.",
2227
+ "items": {
2228
+ "type": "string"
2229
+ }
2230
+ },
2231
+ "wordRevisionIds": {
2232
+ "type": "object",
2233
+ "properties": {
2234
+ "insert": {
2235
+ "type": "string",
2236
+ "description": "Original OOXML w:id from a w:ins mark."
2237
+ },
2238
+ "delete": {
2239
+ "type": "string",
2240
+ "description": "Original OOXML w:id from a w:del mark."
2241
+ },
2242
+ "format": {
2243
+ "type": "string",
2244
+ "description": "Original OOXML w:id from a w:rPrChange mark."
2245
+ }
2246
+ },
2247
+ "additionalProperties": false
2134
2248
  },
2135
2249
  "excerpt": {
2136
2250
  "type": "string",
2137
- "description": "Short text excerpt of the changed content."
2251
+ "description": "Short text excerpt of the changed content. Omitted for paired replacements; read block.textSpans for the per-half text."
2138
2252
  },
2139
2253
  "author": {
2140
2254
  "type": "string",
@@ -51111,7 +51225,9 @@ const CONTRACT = {
51111
51225
  "success",
51112
51226
  "failure"
51113
51227
  ]
51114
- }
51228
+ },
51229
+ "intentGroup": "list",
51230
+ "intentAction": "attach"
51115
51231
  },
51116
51232
  "doc.lists.detach": {
51117
51233
  "operationId": "doc.lists.detach",
@@ -52110,20 +52226,419 @@ const CONTRACT = {
52110
52226
  }
52111
52227
  ]
52112
52228
  }
52113
- },
52114
- {
52115
- "name": "input",
52116
- "kind": "jsonFlag",
52117
- "type": "json",
52118
- "flag": "input-json",
52119
- "description": "Operation input as JSON object."
52229
+ },
52230
+ {
52231
+ "name": "input",
52232
+ "kind": "jsonFlag",
52233
+ "type": "json",
52234
+ "flag": "input-json",
52235
+ "description": "Operation input as JSON object."
52236
+ }
52237
+ ],
52238
+ "constraints": null,
52239
+ "mutates": false,
52240
+ "idempotency": "idempotent",
52241
+ "supportsTrackedMode": false,
52242
+ "supportsDryRun": false,
52243
+ "inputSchema": {
52244
+ "type": "object",
52245
+ "properties": {
52246
+ "target": {
52247
+ "$ref": "#/$defs/ListItemAddress"
52248
+ },
52249
+ "direction": {
52250
+ "enum": [
52251
+ "withPrevious",
52252
+ "withNext"
52253
+ ]
52254
+ }
52255
+ },
52256
+ "additionalProperties": false,
52257
+ "required": [
52258
+ "target",
52259
+ "direction"
52260
+ ]
52261
+ },
52262
+ "outputSchema": {
52263
+ "type": "object",
52264
+ "properties": {
52265
+ "canJoin": {
52266
+ "type": "boolean"
52267
+ },
52268
+ "reason": {
52269
+ "enum": [
52270
+ "NO_ADJACENT_SEQUENCE",
52271
+ "INCOMPATIBLE_DEFINITIONS",
52272
+ "ALREADY_SAME_SEQUENCE"
52273
+ ]
52274
+ },
52275
+ "adjacentListId": {
52276
+ "type": "string"
52277
+ }
52278
+ },
52279
+ "additionalProperties": false,
52280
+ "required": [
52281
+ "canJoin"
52282
+ ]
52283
+ }
52284
+ },
52285
+ "doc.lists.separate": {
52286
+ "operationId": "doc.lists.separate",
52287
+ "sdkSurface": "document",
52288
+ "command": "lists separate",
52289
+ "commandTokens": [
52290
+ "lists",
52291
+ "separate"
52292
+ ],
52293
+ "category": "lists",
52294
+ "description": "Split a list sequence at the target item, creating a new sequence from that point forward.",
52295
+ "requiresDocumentContext": true,
52296
+ "docRequirement": "optional",
52297
+ "responseEnvelopeKey": "result",
52298
+ "params": [
52299
+ {
52300
+ "name": "doc",
52301
+ "kind": "doc",
52302
+ "type": "string",
52303
+ "description": "Document path. Optional when a session is already open."
52304
+ },
52305
+ {
52306
+ "name": "sessionId",
52307
+ "kind": "flag",
52308
+ "type": "string",
52309
+ "flag": "session",
52310
+ "description": "Session ID for multi-session workflows. Optional when only one session is open."
52311
+ },
52312
+ {
52313
+ "name": "out",
52314
+ "kind": "flag",
52315
+ "type": "string",
52316
+ "agentVisible": false
52317
+ },
52318
+ {
52319
+ "name": "force",
52320
+ "kind": "flag",
52321
+ "type": "boolean",
52322
+ "description": "Bypass confirmation checks."
52323
+ },
52324
+ {
52325
+ "name": "expectedRevision",
52326
+ "kind": "flag",
52327
+ "type": "number",
52328
+ "flag": "expected-revision",
52329
+ "agentVisible": false
52330
+ },
52331
+ {
52332
+ "name": "changeMode",
52333
+ "kind": "flag",
52334
+ "type": "string",
52335
+ "flag": "change-mode",
52336
+ "schema": {
52337
+ "enum": [
52338
+ "direct",
52339
+ "tracked"
52340
+ ]
52341
+ },
52342
+ "description": "Edit mode: \"direct\" applies changes immediately, \"tracked\" records as suggestions."
52343
+ },
52344
+ {
52345
+ "name": "dryRun",
52346
+ "kind": "flag",
52347
+ "type": "boolean",
52348
+ "flag": "dry-run",
52349
+ "description": "Preview the result without applying changes."
52350
+ },
52351
+ {
52352
+ "name": "target",
52353
+ "kind": "jsonFlag",
52354
+ "type": "json",
52355
+ "flag": "target-json",
52356
+ "schema": {
52357
+ "type": "object",
52358
+ "properties": {
52359
+ "kind": {
52360
+ "const": "block"
52361
+ },
52362
+ "nodeType": {
52363
+ "const": "listItem"
52364
+ },
52365
+ "nodeId": {
52366
+ "type": "string"
52367
+ }
52368
+ },
52369
+ "required": [
52370
+ "kind",
52371
+ "nodeType",
52372
+ "nodeId"
52373
+ ]
52374
+ }
52375
+ },
52376
+ {
52377
+ "name": "copyOverrides",
52378
+ "kind": "flag",
52379
+ "type": "boolean",
52380
+ "flag": "copy-overrides"
52381
+ },
52382
+ {
52383
+ "name": "input",
52384
+ "kind": "jsonFlag",
52385
+ "type": "json",
52386
+ "flag": "input-json",
52387
+ "description": "Operation input as JSON object."
52388
+ },
52389
+ {
52390
+ "name": "nodeId",
52391
+ "kind": "flag",
52392
+ "type": "string",
52393
+ "flag": "node-id",
52394
+ "description": "Node ID of the target list item."
52395
+ }
52396
+ ],
52397
+ "constraints": null,
52398
+ "mutates": true,
52399
+ "idempotency": "conditional",
52400
+ "supportsTrackedMode": false,
52401
+ "supportsDryRun": true,
52402
+ "inputSchema": {
52403
+ "type": "object",
52404
+ "properties": {
52405
+ "target": {
52406
+ "$ref": "#/$defs/ListItemAddress"
52407
+ },
52408
+ "copyOverrides": {
52409
+ "type": "boolean"
52410
+ }
52411
+ },
52412
+ "additionalProperties": false,
52413
+ "required": [
52414
+ "target"
52415
+ ]
52416
+ },
52417
+ "outputSchema": {
52418
+ "oneOf": [
52419
+ {
52420
+ "type": "object",
52421
+ "properties": {
52422
+ "success": {
52423
+ "const": true
52424
+ },
52425
+ "listId": {
52426
+ "type": "string"
52427
+ },
52428
+ "numId": {
52429
+ "type": "integer"
52430
+ }
52431
+ },
52432
+ "additionalProperties": false,
52433
+ "required": [
52434
+ "success",
52435
+ "listId",
52436
+ "numId"
52437
+ ]
52438
+ },
52439
+ {
52440
+ "type": "object",
52441
+ "properties": {
52442
+ "success": {
52443
+ "const": false
52444
+ },
52445
+ "failure": {
52446
+ "type": "object",
52447
+ "properties": {
52448
+ "code": {
52449
+ "enum": [
52450
+ "INVALID_TARGET",
52451
+ "NO_OP"
52452
+ ]
52453
+ },
52454
+ "message": {
52455
+ "type": "string"
52456
+ },
52457
+ "details": {}
52458
+ },
52459
+ "additionalProperties": false,
52460
+ "required": [
52461
+ "code",
52462
+ "message"
52463
+ ]
52464
+ }
52465
+ },
52466
+ "additionalProperties": false,
52467
+ "required": [
52468
+ "success",
52469
+ "failure"
52470
+ ]
52471
+ }
52472
+ ]
52473
+ },
52474
+ "successSchema": {
52475
+ "type": "object",
52476
+ "properties": {
52477
+ "success": {
52478
+ "const": true
52479
+ },
52480
+ "listId": {
52481
+ "type": "string"
52482
+ },
52483
+ "numId": {
52484
+ "type": "integer"
52485
+ }
52486
+ },
52487
+ "additionalProperties": false,
52488
+ "required": [
52489
+ "success",
52490
+ "listId",
52491
+ "numId"
52492
+ ]
52493
+ },
52494
+ "failureSchema": {
52495
+ "type": "object",
52496
+ "properties": {
52497
+ "success": {
52498
+ "const": false
52499
+ },
52500
+ "failure": {
52501
+ "type": "object",
52502
+ "properties": {
52503
+ "code": {
52504
+ "enum": [
52505
+ "INVALID_TARGET",
52506
+ "NO_OP"
52507
+ ]
52508
+ },
52509
+ "message": {
52510
+ "type": "string"
52511
+ },
52512
+ "details": {}
52513
+ },
52514
+ "additionalProperties": false,
52515
+ "required": [
52516
+ "code",
52517
+ "message"
52518
+ ]
52519
+ }
52520
+ },
52521
+ "additionalProperties": false,
52522
+ "required": [
52523
+ "success",
52524
+ "failure"
52525
+ ]
52526
+ }
52527
+ },
52528
+ "doc.lists.merge": {
52529
+ "operationId": "doc.lists.merge",
52530
+ "sdkSurface": "document",
52531
+ "command": "lists merge",
52532
+ "commandTokens": [
52533
+ "lists",
52534
+ "merge"
52535
+ ],
52536
+ "category": "lists",
52537
+ "description": "Compound: merge two adjacent list sequences into one. Reassigns numId on the absorbed sequence (no strict abstractNumId check — absorbed items adopt the absorbing definition) and deletes empty paragraphs between the two sequences. Use this instead of lists.join for the user-facing \"merge these lists\" intent.",
52538
+ "requiresDocumentContext": true,
52539
+ "docRequirement": "optional",
52540
+ "responseEnvelopeKey": null,
52541
+ "params": [
52542
+ {
52543
+ "name": "doc",
52544
+ "kind": "doc",
52545
+ "type": "string",
52546
+ "description": "Document path. Optional when a session is already open."
52547
+ },
52548
+ {
52549
+ "name": "sessionId",
52550
+ "kind": "flag",
52551
+ "type": "string",
52552
+ "flag": "session",
52553
+ "description": "Session ID for multi-session workflows. Optional when only one session is open."
52554
+ },
52555
+ {
52556
+ "name": "out",
52557
+ "kind": "flag",
52558
+ "type": "string",
52559
+ "agentVisible": false
52560
+ },
52561
+ {
52562
+ "name": "force",
52563
+ "kind": "flag",
52564
+ "type": "boolean",
52565
+ "description": "Bypass confirmation checks."
52566
+ },
52567
+ {
52568
+ "name": "expectedRevision",
52569
+ "kind": "flag",
52570
+ "type": "number",
52571
+ "flag": "expected-revision",
52572
+ "agentVisible": false
52573
+ },
52574
+ {
52575
+ "name": "changeMode",
52576
+ "kind": "flag",
52577
+ "type": "string",
52578
+ "flag": "change-mode",
52579
+ "schema": {
52580
+ "enum": [
52581
+ "direct",
52582
+ "tracked"
52583
+ ]
52584
+ },
52585
+ "description": "Edit mode: \"direct\" applies changes immediately, \"tracked\" records as suggestions."
52586
+ },
52587
+ {
52588
+ "name": "dryRun",
52589
+ "kind": "flag",
52590
+ "type": "boolean",
52591
+ "flag": "dry-run",
52592
+ "description": "Preview the result without applying changes."
52593
+ },
52594
+ {
52595
+ "name": "target",
52596
+ "kind": "jsonFlag",
52597
+ "type": "json",
52598
+ "flag": "target-json",
52599
+ "required": true,
52600
+ "schema": {
52601
+ "type": "object",
52602
+ "properties": {
52603
+ "kind": {
52604
+ "const": "block"
52605
+ },
52606
+ "nodeType": {
52607
+ "const": "listItem"
52608
+ },
52609
+ "nodeId": {
52610
+ "type": "string"
52611
+ }
52612
+ },
52613
+ "required": [
52614
+ "kind",
52615
+ "nodeType",
52616
+ "nodeId"
52617
+ ]
52618
+ }
52619
+ },
52620
+ {
52621
+ "name": "direction",
52622
+ "kind": "flag",
52623
+ "type": "string",
52624
+ "required": true,
52625
+ "schema": {
52626
+ "oneOf": [
52627
+ {
52628
+ "const": "withPrevious"
52629
+ },
52630
+ {
52631
+ "const": "withNext"
52632
+ }
52633
+ ]
52634
+ }
52120
52635
  }
52121
52636
  ],
52122
52637
  "constraints": null,
52123
- "mutates": false,
52124
- "idempotency": "idempotent",
52638
+ "mutates": true,
52639
+ "idempotency": "conditional",
52125
52640
  "supportsTrackedMode": false,
52126
- "supportsDryRun": false,
52641
+ "supportsDryRun": true,
52127
52642
  "inputSchema": {
52128
52643
  "type": "object",
52129
52644
  "properties": {
@@ -52144,41 +52659,141 @@ const CONTRACT = {
52144
52659
  ]
52145
52660
  },
52146
52661
  "outputSchema": {
52147
- "type": "object",
52148
- "properties": {
52149
- "canJoin": {
52150
- "type": "boolean"
52662
+ "oneOf": [
52663
+ {
52664
+ "type": "object",
52665
+ "properties": {
52666
+ "success": {
52667
+ "const": true
52668
+ },
52669
+ "listId": {
52670
+ "type": "string"
52671
+ },
52672
+ "absorbedCount": {
52673
+ "type": "integer"
52674
+ },
52675
+ "removedEmptyBlocks": {
52676
+ "type": "integer"
52677
+ }
52678
+ },
52679
+ "additionalProperties": false,
52680
+ "required": [
52681
+ "success",
52682
+ "listId",
52683
+ "absorbedCount",
52684
+ "removedEmptyBlocks"
52685
+ ]
52151
52686
  },
52152
- "reason": {
52153
- "enum": [
52154
- "NO_ADJACENT_SEQUENCE",
52155
- "INCOMPATIBLE_DEFINITIONS",
52156
- "ALREADY_SAME_SEQUENCE"
52687
+ {
52688
+ "type": "object",
52689
+ "properties": {
52690
+ "success": {
52691
+ "const": false
52692
+ },
52693
+ "failure": {
52694
+ "type": "object",
52695
+ "properties": {
52696
+ "code": {
52697
+ "enum": [
52698
+ "INVALID_TARGET",
52699
+ "NO_ADJACENT_SEQUENCE",
52700
+ "NO_OP"
52701
+ ]
52702
+ },
52703
+ "message": {
52704
+ "type": "string"
52705
+ },
52706
+ "details": {}
52707
+ },
52708
+ "additionalProperties": false,
52709
+ "required": [
52710
+ "code",
52711
+ "message"
52712
+ ]
52713
+ }
52714
+ },
52715
+ "additionalProperties": false,
52716
+ "required": [
52717
+ "success",
52718
+ "failure"
52157
52719
  ]
52720
+ }
52721
+ ]
52722
+ },
52723
+ "successSchema": {
52724
+ "type": "object",
52725
+ "properties": {
52726
+ "success": {
52727
+ "const": true
52158
52728
  },
52159
- "adjacentListId": {
52729
+ "listId": {
52160
52730
  "type": "string"
52731
+ },
52732
+ "absorbedCount": {
52733
+ "type": "integer"
52734
+ },
52735
+ "removedEmptyBlocks": {
52736
+ "type": "integer"
52161
52737
  }
52162
52738
  },
52163
52739
  "additionalProperties": false,
52164
52740
  "required": [
52165
- "canJoin"
52741
+ "success",
52742
+ "listId",
52743
+ "absorbedCount",
52744
+ "removedEmptyBlocks"
52166
52745
  ]
52167
- }
52746
+ },
52747
+ "failureSchema": {
52748
+ "type": "object",
52749
+ "properties": {
52750
+ "success": {
52751
+ "const": false
52752
+ },
52753
+ "failure": {
52754
+ "type": "object",
52755
+ "properties": {
52756
+ "code": {
52757
+ "enum": [
52758
+ "INVALID_TARGET",
52759
+ "NO_ADJACENT_SEQUENCE",
52760
+ "NO_OP"
52761
+ ]
52762
+ },
52763
+ "message": {
52764
+ "type": "string"
52765
+ },
52766
+ "details": {}
52767
+ },
52768
+ "additionalProperties": false,
52769
+ "required": [
52770
+ "code",
52771
+ "message"
52772
+ ]
52773
+ }
52774
+ },
52775
+ "additionalProperties": false,
52776
+ "required": [
52777
+ "success",
52778
+ "failure"
52779
+ ]
52780
+ },
52781
+ "intentGroup": "list",
52782
+ "intentAction": "merge"
52168
52783
  },
52169
- "doc.lists.separate": {
52170
- "operationId": "doc.lists.separate",
52784
+ "doc.lists.split": {
52785
+ "operationId": "doc.lists.split",
52171
52786
  "sdkSurface": "document",
52172
- "command": "lists separate",
52787
+ "command": "lists split",
52173
52788
  "commandTokens": [
52174
52789
  "lists",
52175
- "separate"
52790
+ "split"
52176
52791
  ],
52177
52792
  "category": "lists",
52178
- "description": "Split a list sequence at the target item, creating a new sequence from that point forward.",
52793
+ "description": "Compound: split a list sequence at the target item into two independent sequences. Runs lists.separate then (by default) lists.setValue(1) so the new half starts numbering fresh at 1. Pass restartNumbering:false for raw separate semantics (new half continues the previous count).",
52179
52794
  "requiresDocumentContext": true,
52180
52795
  "docRequirement": "optional",
52181
- "responseEnvelopeKey": "result",
52796
+ "responseEnvelopeKey": null,
52182
52797
  "params": [
52183
52798
  {
52184
52799
  "name": "doc",
@@ -52237,6 +52852,7 @@ const CONTRACT = {
52237
52852
  "kind": "jsonFlag",
52238
52853
  "type": "json",
52239
52854
  "flag": "target-json",
52855
+ "required": true,
52240
52856
  "schema": {
52241
52857
  "type": "object",
52242
52858
  "properties": {
@@ -52258,24 +52874,10 @@ const CONTRACT = {
52258
52874
  }
52259
52875
  },
52260
52876
  {
52261
- "name": "copyOverrides",
52877
+ "name": "restartNumbering",
52262
52878
  "kind": "flag",
52263
52879
  "type": "boolean",
52264
- "flag": "copy-overrides"
52265
- },
52266
- {
52267
- "name": "input",
52268
- "kind": "jsonFlag",
52269
- "type": "json",
52270
- "flag": "input-json",
52271
- "description": "Operation input as JSON object."
52272
- },
52273
- {
52274
- "name": "nodeId",
52275
- "kind": "flag",
52276
- "type": "string",
52277
- "flag": "node-id",
52278
- "description": "Node ID of the target list item."
52880
+ "flag": "restart-numbering"
52279
52881
  }
52280
52882
  ],
52281
52883
  "constraints": null,
@@ -52289,7 +52891,7 @@ const CONTRACT = {
52289
52891
  "target": {
52290
52892
  "$ref": "#/$defs/ListItemAddress"
52291
52893
  },
52292
- "copyOverrides": {
52894
+ "restartNumbering": {
52293
52895
  "type": "boolean"
52294
52896
  }
52295
52897
  },
@@ -52311,13 +52913,20 @@ const CONTRACT = {
52311
52913
  },
52312
52914
  "numId": {
52313
52915
  "type": "integer"
52916
+ },
52917
+ "restartedAt": {
52918
+ "type": [
52919
+ "integer",
52920
+ "null"
52921
+ ]
52314
52922
  }
52315
52923
  },
52316
52924
  "additionalProperties": false,
52317
52925
  "required": [
52318
52926
  "success",
52319
52927
  "listId",
52320
- "numId"
52928
+ "numId",
52929
+ "restartedAt"
52321
52930
  ]
52322
52931
  },
52323
52932
  {
@@ -52366,13 +52975,20 @@ const CONTRACT = {
52366
52975
  },
52367
52976
  "numId": {
52368
52977
  "type": "integer"
52978
+ },
52979
+ "restartedAt": {
52980
+ "type": [
52981
+ "integer",
52982
+ "null"
52983
+ ]
52369
52984
  }
52370
52985
  },
52371
52986
  "additionalProperties": false,
52372
52987
  "required": [
52373
52988
  "success",
52374
52989
  "listId",
52375
- "numId"
52990
+ "numId",
52991
+ "restartedAt"
52376
52992
  ]
52377
52993
  },
52378
52994
  "failureSchema": {
@@ -52407,7 +53023,9 @@ const CONTRACT = {
52407
53023
  "success",
52408
53024
  "failure"
52409
53025
  ]
52410
- }
53026
+ },
53027
+ "intentGroup": "list",
53028
+ "intentAction": "split"
52411
53029
  },
52412
53030
  "doc.lists.setLevel": {
52413
53031
  "operationId": "doc.lists.setLevel",
@@ -52890,7 +53508,9 @@ const CONTRACT = {
52890
53508
  "success",
52891
53509
  "failure"
52892
53510
  ]
52893
- }
53511
+ },
53512
+ "intentGroup": "list",
53513
+ "intentAction": "set_value"
52894
53514
  },
52895
53515
  "doc.lists.continuePrevious": {
52896
53516
  "operationId": "doc.lists.continuePrevious",
@@ -53118,7 +53738,9 @@ const CONTRACT = {
53118
53738
  "success",
53119
53739
  "failure"
53120
53740
  ]
53121
- }
53741
+ },
53742
+ "intentGroup": "list",
53743
+ "intentAction": "continue_previous"
53122
53744
  },
53123
53745
  "doc.lists.canContinuePrevious": {
53124
53746
  "operationId": "doc.lists.canContinuePrevious",
@@ -59166,37 +59788,84 @@ const CONTRACT = {
59166
59788
  "type": "json",
59167
59789
  "flag": "target-json",
59168
59790
  "schema": {
59169
- "type": "object",
59170
- "properties": {
59171
- "kind": {
59172
- "const": "text"
59173
- },
59174
- "blockId": {
59175
- "type": "string"
59791
+ "oneOf": [
59792
+ {
59793
+ "type": "object",
59794
+ "properties": {
59795
+ "kind": {
59796
+ "const": "text"
59797
+ },
59798
+ "blockId": {
59799
+ "type": "string"
59800
+ },
59801
+ "range": {
59802
+ "type": "object",
59803
+ "properties": {
59804
+ "start": {
59805
+ "type": "number"
59806
+ },
59807
+ "end": {
59808
+ "type": "number"
59809
+ }
59810
+ },
59811
+ "required": [
59812
+ "start",
59813
+ "end"
59814
+ ]
59815
+ }
59816
+ },
59817
+ "required": [
59818
+ "kind",
59819
+ "blockId",
59820
+ "range"
59821
+ ]
59176
59822
  },
59177
- "range": {
59823
+ {
59178
59824
  "type": "object",
59179
59825
  "properties": {
59180
- "start": {
59181
- "type": "number"
59826
+ "kind": {
59827
+ "const": "text"
59182
59828
  },
59183
- "end": {
59184
- "type": "number"
59829
+ "segments": {
59830
+ "type": "array",
59831
+ "items": {
59832
+ "type": "object",
59833
+ "properties": {
59834
+ "blockId": {
59835
+ "type": "string"
59836
+ },
59837
+ "range": {
59838
+ "type": "object",
59839
+ "properties": {
59840
+ "start": {
59841
+ "type": "number"
59842
+ },
59843
+ "end": {
59844
+ "type": "number"
59845
+ }
59846
+ },
59847
+ "required": [
59848
+ "start",
59849
+ "end"
59850
+ ]
59851
+ }
59852
+ },
59853
+ "required": [
59854
+ "blockId",
59855
+ "range"
59856
+ ]
59857
+ }
59185
59858
  }
59186
59859
  },
59187
59860
  "required": [
59188
- "start",
59189
- "end"
59861
+ "kind",
59862
+ "segments"
59190
59863
  ]
59191
59864
  }
59192
- },
59193
- "required": [
59194
- "kind",
59195
- "blockId",
59196
- "range"
59197
- ]
59865
+ ],
59866
+ "description": "Text range to anchor the comment. Accepts either a single-block TextAddress {kind:'text', blockId, range} or a multi-segment TextTarget {kind:'text', segments:[{blockId, range}, ...]} for selections that span blocks."
59198
59867
  },
59199
- "description": "Text range to anchor the comment: {kind:'text', blockId:'...', range:{start:N, end:N}}."
59868
+ "description": "Text range to anchor the comment. Accepts either a single-block TextAddress {kind:'text', blockId, range} or a multi-segment TextTarget {kind:'text', segments:[{blockId, range}, ...]} for selections that span blocks."
59200
59869
  },
59201
59870
  {
59202
59871
  "name": "parentId",
@@ -59241,8 +59910,15 @@ const CONTRACT = {
59241
59910
  "description": "Comment text content."
59242
59911
  },
59243
59912
  "target": {
59244
- "$ref": "#/$defs/TextAddress",
59245
- "description": "Text range to anchor the comment: {kind:'text', blockId:'...', range:{start:N, end:N}}."
59913
+ "oneOf": [
59914
+ {
59915
+ "$ref": "#/$defs/TextAddress"
59916
+ },
59917
+ {
59918
+ "$ref": "#/$defs/TextTarget"
59919
+ }
59920
+ ],
59921
+ "description": "Text range to anchor the comment. Accepts either a single-block TextAddress {kind:'text', blockId, range} or a multi-segment TextTarget {kind:'text', segments:[{blockId, range}, ...]} for selections that span blocks."
59246
59922
  },
59247
59923
  "parentCommentId": {
59248
59924
  "type": "string",
@@ -60071,6 +60747,178 @@ const CONTRACT = {
60071
60747
  "description": "Filter by change type: 'insert', 'delete', or 'format'."
60072
60748
  },
60073
60749
  "description": "Filter by change type: 'insert', 'delete', or 'format'."
60750
+ },
60751
+ {
60752
+ "name": "in",
60753
+ "kind": "jsonFlag",
60754
+ "type": "json",
60755
+ "flag": "in-json",
60756
+ "schema": {
60757
+ "oneOf": [
60758
+ {
60759
+ "oneOf": [
60760
+ {
60761
+ "type": "object",
60762
+ "properties": {
60763
+ "kind": {
60764
+ "const": "story"
60765
+ },
60766
+ "storyType": {
60767
+ "const": "body"
60768
+ }
60769
+ },
60770
+ "required": [
60771
+ "kind",
60772
+ "storyType"
60773
+ ]
60774
+ },
60775
+ {
60776
+ "type": "object",
60777
+ "properties": {
60778
+ "kind": {
60779
+ "const": "story"
60780
+ },
60781
+ "storyType": {
60782
+ "const": "headerFooterSlot"
60783
+ },
60784
+ "section": {
60785
+ "type": "object",
60786
+ "properties": {
60787
+ "kind": {
60788
+ "const": "section"
60789
+ },
60790
+ "sectionId": {
60791
+ "type": "string"
60792
+ }
60793
+ },
60794
+ "required": [
60795
+ "kind",
60796
+ "sectionId"
60797
+ ]
60798
+ },
60799
+ "headerFooterKind": {
60800
+ "oneOf": [
60801
+ {
60802
+ "const": "header"
60803
+ },
60804
+ {
60805
+ "const": "footer"
60806
+ }
60807
+ ]
60808
+ },
60809
+ "variant": {
60810
+ "oneOf": [
60811
+ {
60812
+ "const": "default"
60813
+ },
60814
+ {
60815
+ "const": "first"
60816
+ },
60817
+ {
60818
+ "const": "even"
60819
+ }
60820
+ ]
60821
+ },
60822
+ "resolution": {
60823
+ "oneOf": [
60824
+ {
60825
+ "const": "effective"
60826
+ },
60827
+ {
60828
+ "const": "explicit"
60829
+ }
60830
+ ]
60831
+ },
60832
+ "onWrite": {
60833
+ "oneOf": [
60834
+ {
60835
+ "const": "materializeIfInherited"
60836
+ },
60837
+ {
60838
+ "const": "editResolvedPart"
60839
+ },
60840
+ {
60841
+ "const": "error"
60842
+ }
60843
+ ]
60844
+ }
60845
+ },
60846
+ "required": [
60847
+ "kind",
60848
+ "storyType",
60849
+ "section",
60850
+ "headerFooterKind",
60851
+ "variant"
60852
+ ]
60853
+ },
60854
+ {
60855
+ "type": "object",
60856
+ "properties": {
60857
+ "kind": {
60858
+ "const": "story"
60859
+ },
60860
+ "storyType": {
60861
+ "const": "headerFooterPart"
60862
+ },
60863
+ "refId": {
60864
+ "type": "string"
60865
+ }
60866
+ },
60867
+ "required": [
60868
+ "kind",
60869
+ "storyType",
60870
+ "refId"
60871
+ ]
60872
+ },
60873
+ {
60874
+ "type": "object",
60875
+ "properties": {
60876
+ "kind": {
60877
+ "const": "story"
60878
+ },
60879
+ "storyType": {
60880
+ "const": "footnote"
60881
+ },
60882
+ "noteId": {
60883
+ "type": "string"
60884
+ }
60885
+ },
60886
+ "required": [
60887
+ "kind",
60888
+ "storyType",
60889
+ "noteId"
60890
+ ]
60891
+ },
60892
+ {
60893
+ "type": "object",
60894
+ "properties": {
60895
+ "kind": {
60896
+ "const": "story"
60897
+ },
60898
+ "storyType": {
60899
+ "const": "endnote"
60900
+ },
60901
+ "noteId": {
60902
+ "type": "string"
60903
+ }
60904
+ },
60905
+ "required": [
60906
+ "kind",
60907
+ "storyType",
60908
+ "noteId"
60909
+ ]
60910
+ }
60911
+ ],
60912
+ "description": "Story scope. Defaults to document body when omitted. Use {kind:'story', storyType:'body'} for body, or other storyType values for headers, footers, footnotes, endnotes."
60913
+ },
60914
+ {
60915
+ "const": "all"
60916
+ }
60917
+ ],
60918
+ "description": "Story scope. Omit for body only, pass a StoryLocator for a single story, or 'all' for body + every revision-capable non-body story."
60919
+ },
60920
+ "description": "Story scope. Omit for body only, pass a StoryLocator for a single story, or 'all' for body + every revision-capable non-body story.",
60921
+ "agentVisible": false
60074
60922
  }
60075
60923
  ],
60076
60924
  "constraints": null,
@@ -60096,6 +60944,17 @@ const CONTRACT = {
60096
60944
  "format"
60097
60945
  ],
60098
60946
  "description": "Filter by change type: 'insert', 'delete', or 'format'."
60947
+ },
60948
+ "in": {
60949
+ "oneOf": [
60950
+ {
60951
+ "$ref": "#/$defs/StoryLocator"
60952
+ },
60953
+ {
60954
+ "const": "all"
60955
+ }
60956
+ ],
60957
+ "description": "Story scope. Omit for body only, pass a StoryLocator for a single story, or 'all' for body + every revision-capable non-body story."
60099
60958
  }
60100
60959
  },
60101
60960
  "additionalProperties": false
@@ -60222,6 +61081,169 @@ const CONTRACT = {
60222
61081
  "kind": "flag",
60223
61082
  "type": "string",
60224
61083
  "required": true
61084
+ },
61085
+ {
61086
+ "name": "story",
61087
+ "kind": "jsonFlag",
61088
+ "type": "json",
61089
+ "flag": "story-json",
61090
+ "schema": {
61091
+ "oneOf": [
61092
+ {
61093
+ "type": "object",
61094
+ "properties": {
61095
+ "kind": {
61096
+ "const": "story"
61097
+ },
61098
+ "storyType": {
61099
+ "const": "body"
61100
+ }
61101
+ },
61102
+ "required": [
61103
+ "kind",
61104
+ "storyType"
61105
+ ]
61106
+ },
61107
+ {
61108
+ "type": "object",
61109
+ "properties": {
61110
+ "kind": {
61111
+ "const": "story"
61112
+ },
61113
+ "storyType": {
61114
+ "const": "headerFooterSlot"
61115
+ },
61116
+ "section": {
61117
+ "type": "object",
61118
+ "properties": {
61119
+ "kind": {
61120
+ "const": "section"
61121
+ },
61122
+ "sectionId": {
61123
+ "type": "string"
61124
+ }
61125
+ },
61126
+ "required": [
61127
+ "kind",
61128
+ "sectionId"
61129
+ ]
61130
+ },
61131
+ "headerFooterKind": {
61132
+ "oneOf": [
61133
+ {
61134
+ "const": "header"
61135
+ },
61136
+ {
61137
+ "const": "footer"
61138
+ }
61139
+ ]
61140
+ },
61141
+ "variant": {
61142
+ "oneOf": [
61143
+ {
61144
+ "const": "default"
61145
+ },
61146
+ {
61147
+ "const": "first"
61148
+ },
61149
+ {
61150
+ "const": "even"
61151
+ }
61152
+ ]
61153
+ },
61154
+ "resolution": {
61155
+ "oneOf": [
61156
+ {
61157
+ "const": "effective"
61158
+ },
61159
+ {
61160
+ "const": "explicit"
61161
+ }
61162
+ ]
61163
+ },
61164
+ "onWrite": {
61165
+ "oneOf": [
61166
+ {
61167
+ "const": "materializeIfInherited"
61168
+ },
61169
+ {
61170
+ "const": "editResolvedPart"
61171
+ },
61172
+ {
61173
+ "const": "error"
61174
+ }
61175
+ ]
61176
+ }
61177
+ },
61178
+ "required": [
61179
+ "kind",
61180
+ "storyType",
61181
+ "section",
61182
+ "headerFooterKind",
61183
+ "variant"
61184
+ ]
61185
+ },
61186
+ {
61187
+ "type": "object",
61188
+ "properties": {
61189
+ "kind": {
61190
+ "const": "story"
61191
+ },
61192
+ "storyType": {
61193
+ "const": "headerFooterPart"
61194
+ },
61195
+ "refId": {
61196
+ "type": "string"
61197
+ }
61198
+ },
61199
+ "required": [
61200
+ "kind",
61201
+ "storyType",
61202
+ "refId"
61203
+ ]
61204
+ },
61205
+ {
61206
+ "type": "object",
61207
+ "properties": {
61208
+ "kind": {
61209
+ "const": "story"
61210
+ },
61211
+ "storyType": {
61212
+ "const": "footnote"
61213
+ },
61214
+ "noteId": {
61215
+ "type": "string"
61216
+ }
61217
+ },
61218
+ "required": [
61219
+ "kind",
61220
+ "storyType",
61221
+ "noteId"
61222
+ ]
61223
+ },
61224
+ {
61225
+ "type": "object",
61226
+ "properties": {
61227
+ "kind": {
61228
+ "const": "story"
61229
+ },
61230
+ "storyType": {
61231
+ "const": "endnote"
61232
+ },
61233
+ "noteId": {
61234
+ "type": "string"
61235
+ }
61236
+ },
61237
+ "required": [
61238
+ "kind",
61239
+ "storyType",
61240
+ "noteId"
61241
+ ]
61242
+ }
61243
+ ],
61244
+ "description": "Story scope. Defaults to document body when omitted. Use {kind:'story', storyType:'body'} for body, or other storyType values for headers, footers, footnotes, endnotes."
61245
+ },
61246
+ "description": "Story scope. Defaults to document body when omitted. Use {kind:'story', storyType:'body'} for body, or other storyType values for headers, footers, footnotes, endnotes."
60225
61247
  }
60226
61248
  ],
60227
61249
  "constraints": null,
@@ -60234,6 +61256,9 @@ const CONTRACT = {
60234
61256
  "properties": {
60235
61257
  "id": {
60236
61258
  "type": "string"
61259
+ },
61260
+ "story": {
61261
+ "$ref": "#/$defs/StoryLocator"
60237
61262
  }
60238
61263
  },
60239
61264
  "additionalProperties": false,
@@ -60388,6 +61413,162 @@ const CONTRACT = {
60388
61413
  "properties": {
60389
61414
  "id": {
60390
61415
  "type": "string"
61416
+ },
61417
+ "story": {
61418
+ "oneOf": [
61419
+ {
61420
+ "type": "object",
61421
+ "properties": {
61422
+ "kind": {
61423
+ "const": "story"
61424
+ },
61425
+ "storyType": {
61426
+ "const": "body"
61427
+ }
61428
+ },
61429
+ "required": [
61430
+ "kind",
61431
+ "storyType"
61432
+ ]
61433
+ },
61434
+ {
61435
+ "type": "object",
61436
+ "properties": {
61437
+ "kind": {
61438
+ "const": "story"
61439
+ },
61440
+ "storyType": {
61441
+ "const": "headerFooterSlot"
61442
+ },
61443
+ "section": {
61444
+ "type": "object",
61445
+ "properties": {
61446
+ "kind": {
61447
+ "const": "section"
61448
+ },
61449
+ "sectionId": {
61450
+ "type": "string"
61451
+ }
61452
+ },
61453
+ "required": [
61454
+ "kind",
61455
+ "sectionId"
61456
+ ]
61457
+ },
61458
+ "headerFooterKind": {
61459
+ "oneOf": [
61460
+ {
61461
+ "const": "header"
61462
+ },
61463
+ {
61464
+ "const": "footer"
61465
+ }
61466
+ ]
61467
+ },
61468
+ "variant": {
61469
+ "oneOf": [
61470
+ {
61471
+ "const": "default"
61472
+ },
61473
+ {
61474
+ "const": "first"
61475
+ },
61476
+ {
61477
+ "const": "even"
61478
+ }
61479
+ ]
61480
+ },
61481
+ "resolution": {
61482
+ "oneOf": [
61483
+ {
61484
+ "const": "effective"
61485
+ },
61486
+ {
61487
+ "const": "explicit"
61488
+ }
61489
+ ]
61490
+ },
61491
+ "onWrite": {
61492
+ "oneOf": [
61493
+ {
61494
+ "const": "materializeIfInherited"
61495
+ },
61496
+ {
61497
+ "const": "editResolvedPart"
61498
+ },
61499
+ {
61500
+ "const": "error"
61501
+ }
61502
+ ]
61503
+ }
61504
+ },
61505
+ "required": [
61506
+ "kind",
61507
+ "storyType",
61508
+ "section",
61509
+ "headerFooterKind",
61510
+ "variant"
61511
+ ]
61512
+ },
61513
+ {
61514
+ "type": "object",
61515
+ "properties": {
61516
+ "kind": {
61517
+ "const": "story"
61518
+ },
61519
+ "storyType": {
61520
+ "const": "headerFooterPart"
61521
+ },
61522
+ "refId": {
61523
+ "type": "string"
61524
+ }
61525
+ },
61526
+ "required": [
61527
+ "kind",
61528
+ "storyType",
61529
+ "refId"
61530
+ ]
61531
+ },
61532
+ {
61533
+ "type": "object",
61534
+ "properties": {
61535
+ "kind": {
61536
+ "const": "story"
61537
+ },
61538
+ "storyType": {
61539
+ "const": "footnote"
61540
+ },
61541
+ "noteId": {
61542
+ "type": "string"
61543
+ }
61544
+ },
61545
+ "required": [
61546
+ "kind",
61547
+ "storyType",
61548
+ "noteId"
61549
+ ]
61550
+ },
61551
+ {
61552
+ "type": "object",
61553
+ "properties": {
61554
+ "kind": {
61555
+ "const": "story"
61556
+ },
61557
+ "storyType": {
61558
+ "const": "endnote"
61559
+ },
61560
+ "noteId": {
61561
+ "type": "string"
61562
+ }
61563
+ },
61564
+ "required": [
61565
+ "kind",
61566
+ "storyType",
61567
+ "noteId"
61568
+ ]
61569
+ }
61570
+ ],
61571
+ "description": "Story scope. Defaults to document body when omitted. Use {kind:'story', storyType:'body'} for body, or other storyType values for headers, footers, footnotes, endnotes."
60391
61572
  }
60392
61573
  },
60393
61574
  "required": [
@@ -60434,6 +61615,9 @@ const CONTRACT = {
60434
61615
  "properties": {
60435
61616
  "id": {
60436
61617
  "type": "string"
61618
+ },
61619
+ "story": {
61620
+ "$ref": "#/$defs/StoryLocator"
60437
61621
  }
60438
61622
  },
60439
61623
  "additionalProperties": false,
@@ -61824,6 +63008,88 @@ const CONTRACT = {
61824
63008
  ]
61825
63009
  }
61826
63010
  },
63011
+ "doc.selection.current": {
63012
+ "operationId": "doc.selection.current",
63013
+ "sdkSurface": "document",
63014
+ "command": "selection current",
63015
+ "commandTokens": [
63016
+ "selection",
63017
+ "current"
63018
+ ],
63019
+ "category": "core",
63020
+ "description": "Read the editor's current selection as a portable SelectionInfo with a text-anchored TextTarget. Primitive for building custom comments UIs, floating toolbars, and other selection-driven components without reaching into ProseMirror internals.",
63021
+ "requiresDocumentContext": true,
63022
+ "docRequirement": "optional",
63023
+ "responseEnvelopeKey": null,
63024
+ "params": [
63025
+ {
63026
+ "name": "doc",
63027
+ "kind": "doc",
63028
+ "type": "string",
63029
+ "description": "Document path. Optional when a session is already open."
63030
+ },
63031
+ {
63032
+ "name": "sessionId",
63033
+ "kind": "flag",
63034
+ "type": "string",
63035
+ "flag": "session",
63036
+ "description": "Session ID for multi-session workflows. Optional when only one session is open."
63037
+ },
63038
+ {
63039
+ "name": "includeText",
63040
+ "kind": "flag",
63041
+ "type": "boolean",
63042
+ "flag": "include-text"
63043
+ }
63044
+ ],
63045
+ "constraints": null,
63046
+ "mutates": false,
63047
+ "idempotency": "idempotent",
63048
+ "supportsTrackedMode": false,
63049
+ "supportsDryRun": false,
63050
+ "inputSchema": {
63051
+ "type": "object",
63052
+ "properties": {
63053
+ "includeText": {
63054
+ "type": "boolean"
63055
+ }
63056
+ },
63057
+ "additionalProperties": false
63058
+ },
63059
+ "outputSchema": {
63060
+ "type": "object",
63061
+ "properties": {
63062
+ "empty": {
63063
+ "type": "boolean"
63064
+ },
63065
+ "target": {
63066
+ "oneOf": [
63067
+ {
63068
+ "$ref": "#/$defs/TextTarget"
63069
+ },
63070
+ {
63071
+ "type": "null"
63072
+ }
63073
+ ]
63074
+ },
63075
+ "activeMarks": {
63076
+ "type": "array",
63077
+ "items": {
63078
+ "type": "string"
63079
+ }
63080
+ },
63081
+ "text": {
63082
+ "type": "string"
63083
+ }
63084
+ },
63085
+ "additionalProperties": false,
63086
+ "required": [
63087
+ "empty",
63088
+ "target",
63089
+ "activeMarks"
63090
+ ]
63091
+ }
63092
+ },
61827
63093
  "doc.mutations.preview": {
61828
63094
  "operationId": "doc.mutations.preview",
61829
63095
  "sdkSurface": "document",
@@ -79101,6 +80367,76 @@ const CONTRACT = {
79101
80367
  "dryRun"
79102
80368
  ]
79103
80369
  },
80370
+ "lists.merge": {
80371
+ "type": "object",
80372
+ "properties": {
80373
+ "available": {
80374
+ "type": "boolean"
80375
+ },
80376
+ "tracked": {
80377
+ "type": "boolean"
80378
+ },
80379
+ "dryRun": {
80380
+ "type": "boolean"
80381
+ },
80382
+ "reasons": {
80383
+ "type": "array",
80384
+ "items": {
80385
+ "enum": [
80386
+ "COMMAND_UNAVAILABLE",
80387
+ "HELPER_UNAVAILABLE",
80388
+ "OPERATION_UNAVAILABLE",
80389
+ "TRACKED_MODE_UNAVAILABLE",
80390
+ "DRY_RUN_UNAVAILABLE",
80391
+ "NAMESPACE_UNAVAILABLE",
80392
+ "STYLES_PART_MISSING",
80393
+ "COLLABORATION_ACTIVE"
80394
+ ]
80395
+ }
80396
+ }
80397
+ },
80398
+ "additionalProperties": false,
80399
+ "required": [
80400
+ "available",
80401
+ "tracked",
80402
+ "dryRun"
80403
+ ]
80404
+ },
80405
+ "lists.split": {
80406
+ "type": "object",
80407
+ "properties": {
80408
+ "available": {
80409
+ "type": "boolean"
80410
+ },
80411
+ "tracked": {
80412
+ "type": "boolean"
80413
+ },
80414
+ "dryRun": {
80415
+ "type": "boolean"
80416
+ },
80417
+ "reasons": {
80418
+ "type": "array",
80419
+ "items": {
80420
+ "enum": [
80421
+ "COMMAND_UNAVAILABLE",
80422
+ "HELPER_UNAVAILABLE",
80423
+ "OPERATION_UNAVAILABLE",
80424
+ "TRACKED_MODE_UNAVAILABLE",
80425
+ "DRY_RUN_UNAVAILABLE",
80426
+ "NAMESPACE_UNAVAILABLE",
80427
+ "STYLES_PART_MISSING",
80428
+ "COLLABORATION_ACTIVE"
80429
+ ]
80430
+ }
80431
+ }
80432
+ },
80433
+ "additionalProperties": false,
80434
+ "required": [
80435
+ "available",
80436
+ "tracked",
80437
+ "dryRun"
80438
+ ]
80439
+ },
79104
80440
  "lists.setLevel": {
79105
80441
  "type": "object",
79106
80442
  "properties": {
@@ -80326,6 +81662,41 @@ const CONTRACT = {
80326
81662
  "dryRun"
80327
81663
  ]
80328
81664
  },
81665
+ "selection.current": {
81666
+ "type": "object",
81667
+ "properties": {
81668
+ "available": {
81669
+ "type": "boolean"
81670
+ },
81671
+ "tracked": {
81672
+ "type": "boolean"
81673
+ },
81674
+ "dryRun": {
81675
+ "type": "boolean"
81676
+ },
81677
+ "reasons": {
81678
+ "type": "array",
81679
+ "items": {
81680
+ "enum": [
81681
+ "COMMAND_UNAVAILABLE",
81682
+ "HELPER_UNAVAILABLE",
81683
+ "OPERATION_UNAVAILABLE",
81684
+ "TRACKED_MODE_UNAVAILABLE",
81685
+ "DRY_RUN_UNAVAILABLE",
81686
+ "NAMESPACE_UNAVAILABLE",
81687
+ "STYLES_PART_MISSING",
81688
+ "COLLABORATION_ACTIVE"
81689
+ ]
81690
+ }
81691
+ }
81692
+ },
81693
+ "additionalProperties": false,
81694
+ "required": [
81695
+ "available",
81696
+ "tracked",
81697
+ "dryRun"
81698
+ ]
81699
+ },
80329
81700
  "mutations.preview": {
80330
81701
  "type": "object",
80331
81702
  "properties": {
@@ -88704,6 +90075,8 @@ const CONTRACT = {
88704
90075
  "lists.join",
88705
90076
  "lists.canJoin",
88706
90077
  "lists.separate",
90078
+ "lists.merge",
90079
+ "lists.split",
88707
90080
  "lists.setLevel",
88708
90081
  "lists.setValue",
88709
90082
  "lists.continuePrevious",
@@ -88739,6 +90112,7 @@ const CONTRACT = {
88739
90112
  "trackChanges.decide",
88740
90113
  "query.match",
88741
90114
  "ranges.resolve",
90115
+ "selection.current",
88742
90116
  "mutations.preview",
88743
90117
  "mutations.apply",
88744
90118
  "capabilities.get",
@@ -105850,7 +107224,7 @@ const CONTRACT = {
105850
107224
  "get"
105851
107225
  ],
105852
107226
  "category": "history",
105853
- "description": "Query the current undo/redo history state of the active editor.",
107227
+ "description": "Query the current undo/redo history state of the document.",
105854
107228
  "requiresDocumentContext": true,
105855
107229
  "docRequirement": "optional",
105856
107230
  "responseEnvelopeKey": "result",
@@ -105922,7 +107296,7 @@ const CONTRACT = {
105922
107296
  "undo"
105923
107297
  ],
105924
107298
  "category": "history",
105925
- "description": "Undo the most recent history-safe mutation in the active editor.",
107299
+ "description": "Undo the most recent history-safe mutation in the document.",
105926
107300
  "requiresDocumentContext": true,
105927
107301
  "docRequirement": "optional",
105928
107302
  "responseEnvelopeKey": "result",
@@ -106085,7 +107459,7 @@ const CONTRACT = {
106085
107459
  "redo"
106086
107460
  ],
106087
107461
  "category": "history",
106088
- "description": "Redo the most recently undone action in the active editor.",
107462
+ "description": "Redo the most recently undone action in the document.",
106089
107463
  "requiresDocumentContext": true,
106090
107464
  "docRequirement": "optional",
106091
107465
  "responseEnvelopeKey": "result",