@superdoc-dev/sdk 1.8.0-next.3 → 1.8.0-next.30

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.
@@ -2062,9 +2062,52 @@ const CONTRACT = {
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."
2068
2111
  },
2069
2112
  "tableContext": {
2070
2113
  "type": "object",
@@ -2167,7 +2210,7 @@ const CONTRACT = {
2167
2210
  "properties": {
2168
2211
  "entityId": {
2169
2212
  "type": "string",
2170
- "description": "Tracked change entity ID pass to scrollToElement() for navigation."
2213
+ "description": "Tracked change entity ID. Pass to scrollToElement() for navigation."
2171
2214
  },
2172
2215
  "type": {
2173
2216
  "type": "string",
@@ -2175,11 +2218,37 @@ const CONTRACT = {
2175
2218
  "insert",
2176
2219
  "delete",
2177
2220
  "format"
2178
- ]
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
2179
2248
  },
2180
2249
  "excerpt": {
2181
2250
  "type": "string",
2182
- "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."
2183
2252
  },
2184
2253
  "author": {
2185
2254
  "type": "string",
@@ -51156,7 +51225,9 @@ const CONTRACT = {
51156
51225
  "success",
51157
51226
  "failure"
51158
51227
  ]
51159
- }
51228
+ },
51229
+ "intentGroup": "list",
51230
+ "intentAction": "attach"
51160
51231
  },
51161
51232
  "doc.lists.detach": {
51162
51233
  "operationId": "doc.lists.detach",
@@ -52454,19 +52525,19 @@ const CONTRACT = {
52454
52525
  ]
52455
52526
  }
52456
52527
  },
52457
- "doc.lists.setLevel": {
52458
- "operationId": "doc.lists.setLevel",
52528
+ "doc.lists.merge": {
52529
+ "operationId": "doc.lists.merge",
52459
52530
  "sdkSurface": "document",
52460
- "command": "lists set-level",
52531
+ "command": "lists merge",
52461
52532
  "commandTokens": [
52462
52533
  "lists",
52463
- "set-level"
52534
+ "merge"
52464
52535
  ],
52465
52536
  "category": "lists",
52466
- "description": "Set the absolute nesting level (0..8) of a list item.",
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.",
52467
52538
  "requiresDocumentContext": true,
52468
52539
  "docRequirement": "optional",
52469
- "responseEnvelopeKey": "result",
52540
+ "responseEnvelopeKey": null,
52470
52541
  "params": [
52471
52542
  {
52472
52543
  "name": "doc",
@@ -52525,6 +52596,7 @@ const CONTRACT = {
52525
52596
  "kind": "jsonFlag",
52526
52597
  "type": "json",
52527
52598
  "flag": "target-json",
52599
+ "required": true,
52528
52600
  "schema": {
52529
52601
  "type": "object",
52530
52602
  "properties": {
@@ -52546,23 +52618,20 @@ const CONTRACT = {
52546
52618
  }
52547
52619
  },
52548
52620
  {
52549
- "name": "level",
52550
- "kind": "flag",
52551
- "type": "number"
52552
- },
52553
- {
52554
- "name": "input",
52555
- "kind": "jsonFlag",
52556
- "type": "json",
52557
- "flag": "input-json",
52558
- "description": "Operation input as JSON object."
52559
- },
52560
- {
52561
- "name": "nodeId",
52621
+ "name": "direction",
52562
52622
  "kind": "flag",
52563
52623
  "type": "string",
52564
- "flag": "node-id",
52565
- "description": "Node ID of the target list item."
52624
+ "required": true,
52625
+ "schema": {
52626
+ "oneOf": [
52627
+ {
52628
+ "const": "withPrevious"
52629
+ },
52630
+ {
52631
+ "const": "withNext"
52632
+ }
52633
+ ]
52634
+ }
52566
52635
  }
52567
52636
  ],
52568
52637
  "constraints": null,
@@ -52576,16 +52645,17 @@ const CONTRACT = {
52576
52645
  "target": {
52577
52646
  "$ref": "#/$defs/ListItemAddress"
52578
52647
  },
52579
- "level": {
52580
- "type": "integer",
52581
- "minimum": 0,
52582
- "maximum": 8
52648
+ "direction": {
52649
+ "enum": [
52650
+ "withPrevious",
52651
+ "withNext"
52652
+ ]
52583
52653
  }
52584
52654
  },
52585
52655
  "additionalProperties": false,
52586
52656
  "required": [
52587
52657
  "target",
52588
- "level"
52658
+ "direction"
52589
52659
  ]
52590
52660
  },
52591
52661
  "outputSchema": {
@@ -52596,14 +52666,22 @@ const CONTRACT = {
52596
52666
  "success": {
52597
52667
  "const": true
52598
52668
  },
52599
- "item": {
52600
- "$ref": "#/$defs/ListItemAddress"
52669
+ "listId": {
52670
+ "type": "string"
52671
+ },
52672
+ "absorbedCount": {
52673
+ "type": "integer"
52674
+ },
52675
+ "removedEmptyBlocks": {
52676
+ "type": "integer"
52601
52677
  }
52602
52678
  },
52603
52679
  "additionalProperties": false,
52604
52680
  "required": [
52605
52681
  "success",
52606
- "item"
52682
+ "listId",
52683
+ "absorbedCount",
52684
+ "removedEmptyBlocks"
52607
52685
  ]
52608
52686
  },
52609
52687
  {
@@ -52618,7 +52696,7 @@ const CONTRACT = {
52618
52696
  "code": {
52619
52697
  "enum": [
52620
52698
  "INVALID_TARGET",
52621
- "LEVEL_OUT_OF_RANGE",
52699
+ "NO_ADJACENT_SEQUENCE",
52622
52700
  "NO_OP"
52623
52701
  ]
52624
52702
  },
@@ -52648,14 +52726,22 @@ const CONTRACT = {
52648
52726
  "success": {
52649
52727
  "const": true
52650
52728
  },
52651
- "item": {
52652
- "$ref": "#/$defs/ListItemAddress"
52729
+ "listId": {
52730
+ "type": "string"
52731
+ },
52732
+ "absorbedCount": {
52733
+ "type": "integer"
52734
+ },
52735
+ "removedEmptyBlocks": {
52736
+ "type": "integer"
52653
52737
  }
52654
52738
  },
52655
52739
  "additionalProperties": false,
52656
52740
  "required": [
52657
52741
  "success",
52658
- "item"
52742
+ "listId",
52743
+ "absorbedCount",
52744
+ "removedEmptyBlocks"
52659
52745
  ]
52660
52746
  },
52661
52747
  "failureSchema": {
@@ -52670,7 +52756,7 @@ const CONTRACT = {
52670
52756
  "code": {
52671
52757
  "enum": [
52672
52758
  "INVALID_TARGET",
52673
- "LEVEL_OUT_OF_RANGE",
52759
+ "NO_ADJACENT_SEQUENCE",
52674
52760
  "NO_OP"
52675
52761
  ]
52676
52762
  },
@@ -52693,21 +52779,21 @@ const CONTRACT = {
52693
52779
  ]
52694
52780
  },
52695
52781
  "intentGroup": "list",
52696
- "intentAction": "set_level"
52782
+ "intentAction": "merge"
52697
52783
  },
52698
- "doc.lists.setValue": {
52699
- "operationId": "doc.lists.setValue",
52784
+ "doc.lists.split": {
52785
+ "operationId": "doc.lists.split",
52700
52786
  "sdkSurface": "document",
52701
- "command": "lists set-value",
52787
+ "command": "lists split",
52702
52788
  "commandTokens": [
52703
52789
  "lists",
52704
- "set-value"
52790
+ "split"
52705
52791
  ],
52706
52792
  "category": "lists",
52707
- "description": "Set an explicit numbering value at the target item. Mid-sequence targets are atomically separated first.",
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).",
52708
52794
  "requiresDocumentContext": true,
52709
52795
  "docRequirement": "optional",
52710
- "responseEnvelopeKey": "result",
52796
+ "responseEnvelopeKey": null,
52711
52797
  "params": [
52712
52798
  {
52713
52799
  "name": "doc",
@@ -52766,6 +52852,7 @@ const CONTRACT = {
52766
52852
  "kind": "jsonFlag",
52767
52853
  "type": "json",
52768
52854
  "flag": "target-json",
52855
+ "required": true,
52769
52856
  "schema": {
52770
52857
  "type": "object",
52771
52858
  "properties": {
@@ -52787,27 +52874,10 @@ const CONTRACT = {
52787
52874
  }
52788
52875
  },
52789
52876
  {
52790
- "name": "value",
52791
- "kind": "jsonFlag",
52792
- "type": "json",
52793
- "flag": "value-json",
52794
- "schema": {
52795
- "type": "json"
52796
- }
52797
- },
52798
- {
52799
- "name": "input",
52800
- "kind": "jsonFlag",
52801
- "type": "json",
52802
- "flag": "input-json",
52803
- "description": "Operation input as JSON object."
52804
- },
52805
- {
52806
- "name": "nodeId",
52877
+ "name": "restartNumbering",
52807
52878
  "kind": "flag",
52808
- "type": "string",
52809
- "flag": "node-id",
52810
- "description": "Node ID of the target list item."
52879
+ "type": "boolean",
52880
+ "flag": "restart-numbering"
52811
52881
  }
52812
52882
  ],
52813
52883
  "constraints": null,
@@ -52821,17 +52891,13 @@ const CONTRACT = {
52821
52891
  "target": {
52822
52892
  "$ref": "#/$defs/ListItemAddress"
52823
52893
  },
52824
- "value": {
52825
- "type": [
52826
- "integer",
52827
- "null"
52828
- ]
52894
+ "restartNumbering": {
52895
+ "type": "boolean"
52829
52896
  }
52830
52897
  },
52831
52898
  "additionalProperties": false,
52832
52899
  "required": [
52833
- "target",
52834
- "value"
52900
+ "target"
52835
52901
  ]
52836
52902
  },
52837
52903
  "outputSchema": {
@@ -52842,14 +52908,25 @@ const CONTRACT = {
52842
52908
  "success": {
52843
52909
  "const": true
52844
52910
  },
52845
- "item": {
52846
- "$ref": "#/$defs/ListItemAddress"
52911
+ "listId": {
52912
+ "type": "string"
52913
+ },
52914
+ "numId": {
52915
+ "type": "integer"
52916
+ },
52917
+ "restartedAt": {
52918
+ "type": [
52919
+ "integer",
52920
+ "null"
52921
+ ]
52847
52922
  }
52848
52923
  },
52849
52924
  "additionalProperties": false,
52850
52925
  "required": [
52851
52926
  "success",
52852
- "item"
52927
+ "listId",
52928
+ "numId",
52929
+ "restartedAt"
52853
52930
  ]
52854
52931
  },
52855
52932
  {
@@ -52893,14 +52970,25 @@ const CONTRACT = {
52893
52970
  "success": {
52894
52971
  "const": true
52895
52972
  },
52896
- "item": {
52897
- "$ref": "#/$defs/ListItemAddress"
52973
+ "listId": {
52974
+ "type": "string"
52975
+ },
52976
+ "numId": {
52977
+ "type": "integer"
52978
+ },
52979
+ "restartedAt": {
52980
+ "type": [
52981
+ "integer",
52982
+ "null"
52983
+ ]
52898
52984
  }
52899
52985
  },
52900
52986
  "additionalProperties": false,
52901
52987
  "required": [
52902
52988
  "success",
52903
- "item"
52989
+ "listId",
52990
+ "numId",
52991
+ "restartedAt"
52904
52992
  ]
52905
52993
  },
52906
52994
  "failureSchema": {
@@ -52935,18 +53023,20 @@ const CONTRACT = {
52935
53023
  "success",
52936
53024
  "failure"
52937
53025
  ]
52938
- }
53026
+ },
53027
+ "intentGroup": "list",
53028
+ "intentAction": "split"
52939
53029
  },
52940
- "doc.lists.continuePrevious": {
52941
- "operationId": "doc.lists.continuePrevious",
53030
+ "doc.lists.setLevel": {
53031
+ "operationId": "doc.lists.setLevel",
52942
53032
  "sdkSurface": "document",
52943
- "command": "lists continue-previous",
53033
+ "command": "lists set-level",
52944
53034
  "commandTokens": [
52945
53035
  "lists",
52946
- "continue-previous"
53036
+ "set-level"
52947
53037
  ],
52948
53038
  "category": "lists",
52949
- "description": "Continue numbering from the nearest compatible previous list sequence.",
53039
+ "description": "Set the absolute nesting level (0..8) of a list item.",
52950
53040
  "requiresDocumentContext": true,
52951
53041
  "docRequirement": "optional",
52952
53042
  "responseEnvelopeKey": "result",
@@ -53028,6 +53118,11 @@ const CONTRACT = {
53028
53118
  ]
53029
53119
  }
53030
53120
  },
53121
+ {
53122
+ "name": "level",
53123
+ "kind": "flag",
53124
+ "type": "number"
53125
+ },
53031
53126
  {
53032
53127
  "name": "input",
53033
53128
  "kind": "jsonFlag",
@@ -53053,11 +53148,17 @@ const CONTRACT = {
53053
53148
  "properties": {
53054
53149
  "target": {
53055
53150
  "$ref": "#/$defs/ListItemAddress"
53151
+ },
53152
+ "level": {
53153
+ "type": "integer",
53154
+ "minimum": 0,
53155
+ "maximum": 8
53056
53156
  }
53057
53157
  },
53058
53158
  "additionalProperties": false,
53059
53159
  "required": [
53060
- "target"
53160
+ "target",
53161
+ "level"
53061
53162
  ]
53062
53163
  },
53063
53164
  "outputSchema": {
@@ -53090,8 +53191,8 @@ const CONTRACT = {
53090
53191
  "code": {
53091
53192
  "enum": [
53092
53193
  "INVALID_TARGET",
53093
- "NO_COMPATIBLE_PREVIOUS",
53094
- "ALREADY_CONTINUOUS"
53194
+ "LEVEL_OUT_OF_RANGE",
53195
+ "NO_OP"
53095
53196
  ]
53096
53197
  },
53097
53198
  "message": {
@@ -53142,8 +53243,8 @@ const CONTRACT = {
53142
53243
  "code": {
53143
53244
  "enum": [
53144
53245
  "INVALID_TARGET",
53145
- "NO_COMPATIBLE_PREVIOUS",
53146
- "ALREADY_CONTINUOUS"
53246
+ "LEVEL_OUT_OF_RANGE",
53247
+ "NO_OP"
53147
53248
  ]
53148
53249
  },
53149
53250
  "message": {
@@ -53163,18 +53264,494 @@ const CONTRACT = {
53163
53264
  "success",
53164
53265
  "failure"
53165
53266
  ]
53166
- }
53267
+ },
53268
+ "intentGroup": "list",
53269
+ "intentAction": "set_level"
53167
53270
  },
53168
- "doc.lists.canContinuePrevious": {
53169
- "operationId": "doc.lists.canContinuePrevious",
53271
+ "doc.lists.setValue": {
53272
+ "operationId": "doc.lists.setValue",
53170
53273
  "sdkSurface": "document",
53171
- "command": "lists can-continue-previous",
53274
+ "command": "lists set-value",
53172
53275
  "commandTokens": [
53173
53276
  "lists",
53174
- "can-continue-previous"
53277
+ "set-value"
53175
53278
  ],
53176
53279
  "category": "lists",
53177
- "description": "Check whether the target sequence can continue numbering from a previous compatible sequence.",
53280
+ "description": "Set an explicit numbering value at the target item. Mid-sequence targets are atomically separated first.",
53281
+ "requiresDocumentContext": true,
53282
+ "docRequirement": "optional",
53283
+ "responseEnvelopeKey": "result",
53284
+ "params": [
53285
+ {
53286
+ "name": "doc",
53287
+ "kind": "doc",
53288
+ "type": "string",
53289
+ "description": "Document path. Optional when a session is already open."
53290
+ },
53291
+ {
53292
+ "name": "sessionId",
53293
+ "kind": "flag",
53294
+ "type": "string",
53295
+ "flag": "session",
53296
+ "description": "Session ID for multi-session workflows. Optional when only one session is open."
53297
+ },
53298
+ {
53299
+ "name": "out",
53300
+ "kind": "flag",
53301
+ "type": "string",
53302
+ "agentVisible": false
53303
+ },
53304
+ {
53305
+ "name": "force",
53306
+ "kind": "flag",
53307
+ "type": "boolean",
53308
+ "description": "Bypass confirmation checks."
53309
+ },
53310
+ {
53311
+ "name": "expectedRevision",
53312
+ "kind": "flag",
53313
+ "type": "number",
53314
+ "flag": "expected-revision",
53315
+ "agentVisible": false
53316
+ },
53317
+ {
53318
+ "name": "changeMode",
53319
+ "kind": "flag",
53320
+ "type": "string",
53321
+ "flag": "change-mode",
53322
+ "schema": {
53323
+ "enum": [
53324
+ "direct",
53325
+ "tracked"
53326
+ ]
53327
+ },
53328
+ "description": "Edit mode: \"direct\" applies changes immediately, \"tracked\" records as suggestions."
53329
+ },
53330
+ {
53331
+ "name": "dryRun",
53332
+ "kind": "flag",
53333
+ "type": "boolean",
53334
+ "flag": "dry-run",
53335
+ "description": "Preview the result without applying changes."
53336
+ },
53337
+ {
53338
+ "name": "target",
53339
+ "kind": "jsonFlag",
53340
+ "type": "json",
53341
+ "flag": "target-json",
53342
+ "schema": {
53343
+ "type": "object",
53344
+ "properties": {
53345
+ "kind": {
53346
+ "const": "block"
53347
+ },
53348
+ "nodeType": {
53349
+ "const": "listItem"
53350
+ },
53351
+ "nodeId": {
53352
+ "type": "string"
53353
+ }
53354
+ },
53355
+ "required": [
53356
+ "kind",
53357
+ "nodeType",
53358
+ "nodeId"
53359
+ ]
53360
+ }
53361
+ },
53362
+ {
53363
+ "name": "value",
53364
+ "kind": "jsonFlag",
53365
+ "type": "json",
53366
+ "flag": "value-json",
53367
+ "schema": {
53368
+ "type": "json"
53369
+ }
53370
+ },
53371
+ {
53372
+ "name": "input",
53373
+ "kind": "jsonFlag",
53374
+ "type": "json",
53375
+ "flag": "input-json",
53376
+ "description": "Operation input as JSON object."
53377
+ },
53378
+ {
53379
+ "name": "nodeId",
53380
+ "kind": "flag",
53381
+ "type": "string",
53382
+ "flag": "node-id",
53383
+ "description": "Node ID of the target list item."
53384
+ }
53385
+ ],
53386
+ "constraints": null,
53387
+ "mutates": true,
53388
+ "idempotency": "conditional",
53389
+ "supportsTrackedMode": false,
53390
+ "supportsDryRun": true,
53391
+ "inputSchema": {
53392
+ "type": "object",
53393
+ "properties": {
53394
+ "target": {
53395
+ "$ref": "#/$defs/ListItemAddress"
53396
+ },
53397
+ "value": {
53398
+ "type": [
53399
+ "integer",
53400
+ "null"
53401
+ ]
53402
+ }
53403
+ },
53404
+ "additionalProperties": false,
53405
+ "required": [
53406
+ "target",
53407
+ "value"
53408
+ ]
53409
+ },
53410
+ "outputSchema": {
53411
+ "oneOf": [
53412
+ {
53413
+ "type": "object",
53414
+ "properties": {
53415
+ "success": {
53416
+ "const": true
53417
+ },
53418
+ "item": {
53419
+ "$ref": "#/$defs/ListItemAddress"
53420
+ }
53421
+ },
53422
+ "additionalProperties": false,
53423
+ "required": [
53424
+ "success",
53425
+ "item"
53426
+ ]
53427
+ },
53428
+ {
53429
+ "type": "object",
53430
+ "properties": {
53431
+ "success": {
53432
+ "const": false
53433
+ },
53434
+ "failure": {
53435
+ "type": "object",
53436
+ "properties": {
53437
+ "code": {
53438
+ "enum": [
53439
+ "INVALID_TARGET",
53440
+ "NO_OP"
53441
+ ]
53442
+ },
53443
+ "message": {
53444
+ "type": "string"
53445
+ },
53446
+ "details": {}
53447
+ },
53448
+ "additionalProperties": false,
53449
+ "required": [
53450
+ "code",
53451
+ "message"
53452
+ ]
53453
+ }
53454
+ },
53455
+ "additionalProperties": false,
53456
+ "required": [
53457
+ "success",
53458
+ "failure"
53459
+ ]
53460
+ }
53461
+ ]
53462
+ },
53463
+ "successSchema": {
53464
+ "type": "object",
53465
+ "properties": {
53466
+ "success": {
53467
+ "const": true
53468
+ },
53469
+ "item": {
53470
+ "$ref": "#/$defs/ListItemAddress"
53471
+ }
53472
+ },
53473
+ "additionalProperties": false,
53474
+ "required": [
53475
+ "success",
53476
+ "item"
53477
+ ]
53478
+ },
53479
+ "failureSchema": {
53480
+ "type": "object",
53481
+ "properties": {
53482
+ "success": {
53483
+ "const": false
53484
+ },
53485
+ "failure": {
53486
+ "type": "object",
53487
+ "properties": {
53488
+ "code": {
53489
+ "enum": [
53490
+ "INVALID_TARGET",
53491
+ "NO_OP"
53492
+ ]
53493
+ },
53494
+ "message": {
53495
+ "type": "string"
53496
+ },
53497
+ "details": {}
53498
+ },
53499
+ "additionalProperties": false,
53500
+ "required": [
53501
+ "code",
53502
+ "message"
53503
+ ]
53504
+ }
53505
+ },
53506
+ "additionalProperties": false,
53507
+ "required": [
53508
+ "success",
53509
+ "failure"
53510
+ ]
53511
+ },
53512
+ "intentGroup": "list",
53513
+ "intentAction": "set_value"
53514
+ },
53515
+ "doc.lists.continuePrevious": {
53516
+ "operationId": "doc.lists.continuePrevious",
53517
+ "sdkSurface": "document",
53518
+ "command": "lists continue-previous",
53519
+ "commandTokens": [
53520
+ "lists",
53521
+ "continue-previous"
53522
+ ],
53523
+ "category": "lists",
53524
+ "description": "Continue numbering from the nearest compatible previous list sequence.",
53525
+ "requiresDocumentContext": true,
53526
+ "docRequirement": "optional",
53527
+ "responseEnvelopeKey": "result",
53528
+ "params": [
53529
+ {
53530
+ "name": "doc",
53531
+ "kind": "doc",
53532
+ "type": "string",
53533
+ "description": "Document path. Optional when a session is already open."
53534
+ },
53535
+ {
53536
+ "name": "sessionId",
53537
+ "kind": "flag",
53538
+ "type": "string",
53539
+ "flag": "session",
53540
+ "description": "Session ID for multi-session workflows. Optional when only one session is open."
53541
+ },
53542
+ {
53543
+ "name": "out",
53544
+ "kind": "flag",
53545
+ "type": "string",
53546
+ "agentVisible": false
53547
+ },
53548
+ {
53549
+ "name": "force",
53550
+ "kind": "flag",
53551
+ "type": "boolean",
53552
+ "description": "Bypass confirmation checks."
53553
+ },
53554
+ {
53555
+ "name": "expectedRevision",
53556
+ "kind": "flag",
53557
+ "type": "number",
53558
+ "flag": "expected-revision",
53559
+ "agentVisible": false
53560
+ },
53561
+ {
53562
+ "name": "changeMode",
53563
+ "kind": "flag",
53564
+ "type": "string",
53565
+ "flag": "change-mode",
53566
+ "schema": {
53567
+ "enum": [
53568
+ "direct",
53569
+ "tracked"
53570
+ ]
53571
+ },
53572
+ "description": "Edit mode: \"direct\" applies changes immediately, \"tracked\" records as suggestions."
53573
+ },
53574
+ {
53575
+ "name": "dryRun",
53576
+ "kind": "flag",
53577
+ "type": "boolean",
53578
+ "flag": "dry-run",
53579
+ "description": "Preview the result without applying changes."
53580
+ },
53581
+ {
53582
+ "name": "target",
53583
+ "kind": "jsonFlag",
53584
+ "type": "json",
53585
+ "flag": "target-json",
53586
+ "schema": {
53587
+ "type": "object",
53588
+ "properties": {
53589
+ "kind": {
53590
+ "const": "block"
53591
+ },
53592
+ "nodeType": {
53593
+ "const": "listItem"
53594
+ },
53595
+ "nodeId": {
53596
+ "type": "string"
53597
+ }
53598
+ },
53599
+ "required": [
53600
+ "kind",
53601
+ "nodeType",
53602
+ "nodeId"
53603
+ ]
53604
+ }
53605
+ },
53606
+ {
53607
+ "name": "input",
53608
+ "kind": "jsonFlag",
53609
+ "type": "json",
53610
+ "flag": "input-json",
53611
+ "description": "Operation input as JSON object."
53612
+ },
53613
+ {
53614
+ "name": "nodeId",
53615
+ "kind": "flag",
53616
+ "type": "string",
53617
+ "flag": "node-id",
53618
+ "description": "Node ID of the target list item."
53619
+ }
53620
+ ],
53621
+ "constraints": null,
53622
+ "mutates": true,
53623
+ "idempotency": "conditional",
53624
+ "supportsTrackedMode": false,
53625
+ "supportsDryRun": true,
53626
+ "inputSchema": {
53627
+ "type": "object",
53628
+ "properties": {
53629
+ "target": {
53630
+ "$ref": "#/$defs/ListItemAddress"
53631
+ }
53632
+ },
53633
+ "additionalProperties": false,
53634
+ "required": [
53635
+ "target"
53636
+ ]
53637
+ },
53638
+ "outputSchema": {
53639
+ "oneOf": [
53640
+ {
53641
+ "type": "object",
53642
+ "properties": {
53643
+ "success": {
53644
+ "const": true
53645
+ },
53646
+ "item": {
53647
+ "$ref": "#/$defs/ListItemAddress"
53648
+ }
53649
+ },
53650
+ "additionalProperties": false,
53651
+ "required": [
53652
+ "success",
53653
+ "item"
53654
+ ]
53655
+ },
53656
+ {
53657
+ "type": "object",
53658
+ "properties": {
53659
+ "success": {
53660
+ "const": false
53661
+ },
53662
+ "failure": {
53663
+ "type": "object",
53664
+ "properties": {
53665
+ "code": {
53666
+ "enum": [
53667
+ "INVALID_TARGET",
53668
+ "NO_COMPATIBLE_PREVIOUS",
53669
+ "ALREADY_CONTINUOUS"
53670
+ ]
53671
+ },
53672
+ "message": {
53673
+ "type": "string"
53674
+ },
53675
+ "details": {}
53676
+ },
53677
+ "additionalProperties": false,
53678
+ "required": [
53679
+ "code",
53680
+ "message"
53681
+ ]
53682
+ }
53683
+ },
53684
+ "additionalProperties": false,
53685
+ "required": [
53686
+ "success",
53687
+ "failure"
53688
+ ]
53689
+ }
53690
+ ]
53691
+ },
53692
+ "successSchema": {
53693
+ "type": "object",
53694
+ "properties": {
53695
+ "success": {
53696
+ "const": true
53697
+ },
53698
+ "item": {
53699
+ "$ref": "#/$defs/ListItemAddress"
53700
+ }
53701
+ },
53702
+ "additionalProperties": false,
53703
+ "required": [
53704
+ "success",
53705
+ "item"
53706
+ ]
53707
+ },
53708
+ "failureSchema": {
53709
+ "type": "object",
53710
+ "properties": {
53711
+ "success": {
53712
+ "const": false
53713
+ },
53714
+ "failure": {
53715
+ "type": "object",
53716
+ "properties": {
53717
+ "code": {
53718
+ "enum": [
53719
+ "INVALID_TARGET",
53720
+ "NO_COMPATIBLE_PREVIOUS",
53721
+ "ALREADY_CONTINUOUS"
53722
+ ]
53723
+ },
53724
+ "message": {
53725
+ "type": "string"
53726
+ },
53727
+ "details": {}
53728
+ },
53729
+ "additionalProperties": false,
53730
+ "required": [
53731
+ "code",
53732
+ "message"
53733
+ ]
53734
+ }
53735
+ },
53736
+ "additionalProperties": false,
53737
+ "required": [
53738
+ "success",
53739
+ "failure"
53740
+ ]
53741
+ },
53742
+ "intentGroup": "list",
53743
+ "intentAction": "continue_previous"
53744
+ },
53745
+ "doc.lists.canContinuePrevious": {
53746
+ "operationId": "doc.lists.canContinuePrevious",
53747
+ "sdkSurface": "document",
53748
+ "command": "lists can-continue-previous",
53749
+ "commandTokens": [
53750
+ "lists",
53751
+ "can-continue-previous"
53752
+ ],
53753
+ "category": "lists",
53754
+ "description": "Check whether the target sequence can continue numbering from a previous compatible sequence.",
53178
53755
  "requiresDocumentContext": true,
53179
53756
  "docRequirement": "optional",
53180
53757
  "responseEnvelopeKey": "result",
@@ -59211,37 +59788,240 @@ const CONTRACT = {
59211
59788
  "type": "json",
59212
59789
  "flag": "target-json",
59213
59790
  "schema": {
59214
- "type": "object",
59215
- "properties": {
59216
- "kind": {
59217
- "const": "text"
59218
- },
59219
- "blockId": {
59220
- "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
+ ]
59221
59822
  },
59222
- "range": {
59823
+ {
59223
59824
  "type": "object",
59224
59825
  "properties": {
59225
- "start": {
59226
- "type": "number"
59826
+ "kind": {
59827
+ "const": "text"
59227
59828
  },
59228
- "end": {
59229
- "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
+ }
59858
+ },
59859
+ "story": {
59860
+ "oneOf": [
59861
+ {
59862
+ "type": "object",
59863
+ "properties": {
59864
+ "kind": {
59865
+ "const": "story"
59866
+ },
59867
+ "storyType": {
59868
+ "const": "body"
59869
+ }
59870
+ },
59871
+ "required": [
59872
+ "kind",
59873
+ "storyType"
59874
+ ]
59875
+ },
59876
+ {
59877
+ "type": "object",
59878
+ "properties": {
59879
+ "kind": {
59880
+ "const": "story"
59881
+ },
59882
+ "storyType": {
59883
+ "const": "headerFooterSlot"
59884
+ },
59885
+ "section": {
59886
+ "type": "object",
59887
+ "properties": {
59888
+ "kind": {
59889
+ "const": "section"
59890
+ },
59891
+ "sectionId": {
59892
+ "type": "string"
59893
+ }
59894
+ },
59895
+ "required": [
59896
+ "kind",
59897
+ "sectionId"
59898
+ ]
59899
+ },
59900
+ "headerFooterKind": {
59901
+ "oneOf": [
59902
+ {
59903
+ "const": "header"
59904
+ },
59905
+ {
59906
+ "const": "footer"
59907
+ }
59908
+ ]
59909
+ },
59910
+ "variant": {
59911
+ "oneOf": [
59912
+ {
59913
+ "const": "default"
59914
+ },
59915
+ {
59916
+ "const": "first"
59917
+ },
59918
+ {
59919
+ "const": "even"
59920
+ }
59921
+ ]
59922
+ },
59923
+ "resolution": {
59924
+ "oneOf": [
59925
+ {
59926
+ "const": "effective"
59927
+ },
59928
+ {
59929
+ "const": "explicit"
59930
+ }
59931
+ ]
59932
+ },
59933
+ "onWrite": {
59934
+ "oneOf": [
59935
+ {
59936
+ "const": "materializeIfInherited"
59937
+ },
59938
+ {
59939
+ "const": "editResolvedPart"
59940
+ },
59941
+ {
59942
+ "const": "error"
59943
+ }
59944
+ ]
59945
+ }
59946
+ },
59947
+ "required": [
59948
+ "kind",
59949
+ "storyType",
59950
+ "section",
59951
+ "headerFooterKind",
59952
+ "variant"
59953
+ ]
59954
+ },
59955
+ {
59956
+ "type": "object",
59957
+ "properties": {
59958
+ "kind": {
59959
+ "const": "story"
59960
+ },
59961
+ "storyType": {
59962
+ "const": "headerFooterPart"
59963
+ },
59964
+ "refId": {
59965
+ "type": "string"
59966
+ }
59967
+ },
59968
+ "required": [
59969
+ "kind",
59970
+ "storyType",
59971
+ "refId"
59972
+ ]
59973
+ },
59974
+ {
59975
+ "type": "object",
59976
+ "properties": {
59977
+ "kind": {
59978
+ "const": "story"
59979
+ },
59980
+ "storyType": {
59981
+ "const": "footnote"
59982
+ },
59983
+ "noteId": {
59984
+ "type": "string"
59985
+ }
59986
+ },
59987
+ "required": [
59988
+ "kind",
59989
+ "storyType",
59990
+ "noteId"
59991
+ ]
59992
+ },
59993
+ {
59994
+ "type": "object",
59995
+ "properties": {
59996
+ "kind": {
59997
+ "const": "story"
59998
+ },
59999
+ "storyType": {
60000
+ "const": "endnote"
60001
+ },
60002
+ "noteId": {
60003
+ "type": "string"
60004
+ }
60005
+ },
60006
+ "required": [
60007
+ "kind",
60008
+ "storyType",
60009
+ "noteId"
60010
+ ]
60011
+ }
60012
+ ],
60013
+ "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."
59230
60014
  }
59231
60015
  },
59232
60016
  "required": [
59233
- "start",
59234
- "end"
60017
+ "kind",
60018
+ "segments"
59235
60019
  ]
59236
60020
  }
59237
- },
59238
- "required": [
59239
- "kind",
59240
- "blockId",
59241
- "range"
59242
- ]
60021
+ ],
60022
+ "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."
59243
60023
  },
59244
- "description": "Text range to anchor the comment: {kind:'text', blockId:'...', range:{start:N, end:N}}."
60024
+ "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."
59245
60025
  },
59246
60026
  {
59247
60027
  "name": "parentId",
@@ -59286,8 +60066,15 @@ const CONTRACT = {
59286
60066
  "description": "Comment text content."
59287
60067
  },
59288
60068
  "target": {
59289
- "$ref": "#/$defs/TextAddress",
59290
- "description": "Text range to anchor the comment: {kind:'text', blockId:'...', range:{start:N, end:N}}."
60069
+ "oneOf": [
60070
+ {
60071
+ "$ref": "#/$defs/TextAddress"
60072
+ },
60073
+ {
60074
+ "$ref": "#/$defs/TextTarget"
60075
+ }
60076
+ ],
60077
+ "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."
59291
60078
  },
59292
60079
  "parentCommentId": {
59293
60080
  "type": "string",
@@ -59493,11 +60280,14 @@ const CONTRACT = {
59493
60280
  "oneOf": [
59494
60281
  {
59495
60282
  "const": "resolved"
60283
+ },
60284
+ {
60285
+ "const": "active"
59496
60286
  }
59497
60287
  ],
59498
- "description": "Set comment status. Use 'resolved' to mark as resolved."
60288
+ "description": "Set comment status. Use 'resolved' to resolve a comment, or 'active' to reopen a previously resolved comment (lifecycle inverse)."
59499
60289
  },
59500
- "description": "Set comment status. Use 'resolved' to mark as resolved."
60290
+ "description": "Set comment status. Use 'resolved' to resolve a comment, or 'active' to reopen a previously resolved comment (lifecycle inverse)."
59501
60291
  },
59502
60292
  {
59503
60293
  "name": "isInternal",
@@ -59549,9 +60339,10 @@ const CONTRACT = {
59549
60339
  },
59550
60340
  "status": {
59551
60341
  "enum": [
59552
- "resolved"
60342
+ "resolved",
60343
+ "active"
59553
60344
  ],
59554
- "description": "Set comment status. Use 'resolved' to mark as resolved."
60345
+ "description": "Set comment status. Use 'resolved' to resolve a comment, or 'active' to reopen a previously resolved comment (lifecycle inverse)."
59555
60346
  },
59556
60347
  "isInternal": {
59557
60348
  "type": "boolean",
@@ -62377,6 +63168,102 @@ const CONTRACT = {
62377
63168
  ]
62378
63169
  }
62379
63170
  },
63171
+ "doc.selection.current": {
63172
+ "operationId": "doc.selection.current",
63173
+ "sdkSurface": "document",
63174
+ "command": "selection current",
63175
+ "commandTokens": [
63176
+ "selection",
63177
+ "current"
63178
+ ],
63179
+ "category": "core",
63180
+ "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.",
63181
+ "requiresDocumentContext": true,
63182
+ "docRequirement": "optional",
63183
+ "responseEnvelopeKey": null,
63184
+ "params": [
63185
+ {
63186
+ "name": "doc",
63187
+ "kind": "doc",
63188
+ "type": "string",
63189
+ "description": "Document path. Optional when a session is already open."
63190
+ },
63191
+ {
63192
+ "name": "sessionId",
63193
+ "kind": "flag",
63194
+ "type": "string",
63195
+ "flag": "session",
63196
+ "description": "Session ID for multi-session workflows. Optional when only one session is open."
63197
+ },
63198
+ {
63199
+ "name": "includeText",
63200
+ "kind": "flag",
63201
+ "type": "boolean",
63202
+ "flag": "include-text"
63203
+ }
63204
+ ],
63205
+ "constraints": null,
63206
+ "mutates": false,
63207
+ "idempotency": "idempotent",
63208
+ "supportsTrackedMode": false,
63209
+ "supportsDryRun": false,
63210
+ "inputSchema": {
63211
+ "type": "object",
63212
+ "properties": {
63213
+ "includeText": {
63214
+ "type": "boolean"
63215
+ }
63216
+ },
63217
+ "additionalProperties": false
63218
+ },
63219
+ "outputSchema": {
63220
+ "type": "object",
63221
+ "properties": {
63222
+ "empty": {
63223
+ "type": "boolean"
63224
+ },
63225
+ "target": {
63226
+ "oneOf": [
63227
+ {
63228
+ "$ref": "#/$defs/TextTarget"
63229
+ },
63230
+ {
63231
+ "type": "null"
63232
+ }
63233
+ ]
63234
+ },
63235
+ "activeMarks": {
63236
+ "type": "array",
63237
+ "items": {
63238
+ "type": "string"
63239
+ }
63240
+ },
63241
+ "activeCommentIds": {
63242
+ "type": "array",
63243
+ "items": {
63244
+ "type": "string"
63245
+ }
63246
+ },
63247
+ "activeChangeIds": {
63248
+ "type": "array",
63249
+ "items": {
63250
+ "type": "string"
63251
+ }
63252
+ },
63253
+ "text": {
63254
+ "type": "string"
63255
+ }
63256
+ },
63257
+ "additionalProperties": false,
63258
+ "required": [
63259
+ "empty",
63260
+ "target",
63261
+ "activeMarks",
63262
+ "activeCommentIds",
63263
+ "activeChangeIds"
63264
+ ]
63265
+ }
63266
+ },
62380
63267
  "doc.mutations.preview": {
62381
63268
  "operationId": "doc.mutations.preview",
62382
63269
  "sdkSurface": "document",
@@ -79654,6 +80541,76 @@ const CONTRACT = {
79654
80541
  "dryRun"
79655
80542
  ]
79656
80543
  },
80544
+ "lists.merge": {
80545
+ "type": "object",
80546
+ "properties": {
80547
+ "available": {
80548
+ "type": "boolean"
80549
+ },
80550
+ "tracked": {
80551
+ "type": "boolean"
80552
+ },
80553
+ "dryRun": {
80554
+ "type": "boolean"
80555
+ },
80556
+ "reasons": {
80557
+ "type": "array",
80558
+ "items": {
80559
+ "enum": [
80560
+ "COMMAND_UNAVAILABLE",
80561
+ "HELPER_UNAVAILABLE",
80562
+ "OPERATION_UNAVAILABLE",
80563
+ "TRACKED_MODE_UNAVAILABLE",
80564
+ "DRY_RUN_UNAVAILABLE",
80565
+ "NAMESPACE_UNAVAILABLE",
80566
+ "STYLES_PART_MISSING",
80567
+ "COLLABORATION_ACTIVE"
80568
+ ]
80569
+ }
80570
+ }
80571
+ },
80572
+ "additionalProperties": false,
80573
+ "required": [
80574
+ "available",
80575
+ "tracked",
80576
+ "dryRun"
80577
+ ]
80578
+ },
80579
+ "lists.split": {
80580
+ "type": "object",
80581
+ "properties": {
80582
+ "available": {
80583
+ "type": "boolean"
80584
+ },
80585
+ "tracked": {
80586
+ "type": "boolean"
80587
+ },
80588
+ "dryRun": {
80589
+ "type": "boolean"
80590
+ },
80591
+ "reasons": {
80592
+ "type": "array",
80593
+ "items": {
80594
+ "enum": [
80595
+ "COMMAND_UNAVAILABLE",
80596
+ "HELPER_UNAVAILABLE",
80597
+ "OPERATION_UNAVAILABLE",
80598
+ "TRACKED_MODE_UNAVAILABLE",
80599
+ "DRY_RUN_UNAVAILABLE",
80600
+ "NAMESPACE_UNAVAILABLE",
80601
+ "STYLES_PART_MISSING",
80602
+ "COLLABORATION_ACTIVE"
80603
+ ]
80604
+ }
80605
+ }
80606
+ },
80607
+ "additionalProperties": false,
80608
+ "required": [
80609
+ "available",
80610
+ "tracked",
80611
+ "dryRun"
80612
+ ]
80613
+ },
79657
80614
  "lists.setLevel": {
79658
80615
  "type": "object",
79659
80616
  "properties": {
@@ -80879,6 +81836,41 @@ const CONTRACT = {
80879
81836
  "dryRun"
80880
81837
  ]
80881
81838
  },
81839
+ "selection.current": {
81840
+ "type": "object",
81841
+ "properties": {
81842
+ "available": {
81843
+ "type": "boolean"
81844
+ },
81845
+ "tracked": {
81846
+ "type": "boolean"
81847
+ },
81848
+ "dryRun": {
81849
+ "type": "boolean"
81850
+ },
81851
+ "reasons": {
81852
+ "type": "array",
81853
+ "items": {
81854
+ "enum": [
81855
+ "COMMAND_UNAVAILABLE",
81856
+ "HELPER_UNAVAILABLE",
81857
+ "OPERATION_UNAVAILABLE",
81858
+ "TRACKED_MODE_UNAVAILABLE",
81859
+ "DRY_RUN_UNAVAILABLE",
81860
+ "NAMESPACE_UNAVAILABLE",
81861
+ "STYLES_PART_MISSING",
81862
+ "COLLABORATION_ACTIVE"
81863
+ ]
81864
+ }
81865
+ }
81866
+ },
81867
+ "additionalProperties": false,
81868
+ "required": [
81869
+ "available",
81870
+ "tracked",
81871
+ "dryRun"
81872
+ ]
81873
+ },
80882
81874
  "mutations.preview": {
80883
81875
  "type": "object",
80884
81876
  "properties": {
@@ -89257,6 +90249,8 @@ const CONTRACT = {
89257
90249
  "lists.join",
89258
90250
  "lists.canJoin",
89259
90251
  "lists.separate",
90252
+ "lists.merge",
90253
+ "lists.split",
89260
90254
  "lists.setLevel",
89261
90255
  "lists.setValue",
89262
90256
  "lists.continuePrevious",
@@ -89292,6 +90286,7 @@ const CONTRACT = {
89292
90286
  "trackChanges.decide",
89293
90287
  "query.match",
89294
90288
  "ranges.resolve",
90289
+ "selection.current",
89295
90290
  "mutations.preview",
89296
90291
  "mutations.apply",
89297
90292
  "capabilities.get",
@@ -130599,6 +131594,170 @@ const CONTRACT = {
130599
131594
  "name": "offset",
130600
131595
  "kind": "flag",
130601
131596
  "type": "number"
131597
+ },
131598
+ {
131599
+ "name": "in",
131600
+ "kind": "jsonFlag",
131601
+ "type": "json",
131602
+ "flag": "in-json",
131603
+ "schema": {
131604
+ "oneOf": [
131605
+ {
131606
+ "type": "object",
131607
+ "properties": {
131608
+ "kind": {
131609
+ "const": "story"
131610
+ },
131611
+ "storyType": {
131612
+ "const": "body"
131613
+ }
131614
+ },
131615
+ "required": [
131616
+ "kind",
131617
+ "storyType"
131618
+ ]
131619
+ },
131620
+ {
131621
+ "type": "object",
131622
+ "properties": {
131623
+ "kind": {
131624
+ "const": "story"
131625
+ },
131626
+ "storyType": {
131627
+ "const": "headerFooterSlot"
131628
+ },
131629
+ "section": {
131630
+ "type": "object",
131631
+ "properties": {
131632
+ "kind": {
131633
+ "const": "section"
131634
+ },
131635
+ "sectionId": {
131636
+ "type": "string"
131637
+ }
131638
+ },
131639
+ "required": [
131640
+ "kind",
131641
+ "sectionId"
131642
+ ]
131643
+ },
131644
+ "headerFooterKind": {
131645
+ "oneOf": [
131646
+ {
131647
+ "const": "header"
131648
+ },
131649
+ {
131650
+ "const": "footer"
131651
+ }
131652
+ ]
131653
+ },
131654
+ "variant": {
131655
+ "oneOf": [
131656
+ {
131657
+ "const": "default"
131658
+ },
131659
+ {
131660
+ "const": "first"
131661
+ },
131662
+ {
131663
+ "const": "even"
131664
+ }
131665
+ ]
131666
+ },
131667
+ "resolution": {
131668
+ "oneOf": [
131669
+ {
131670
+ "const": "effective"
131671
+ },
131672
+ {
131673
+ "const": "explicit"
131674
+ }
131675
+ ]
131676
+ },
131677
+ "onWrite": {
131678
+ "oneOf": [
131679
+ {
131680
+ "const": "materializeIfInherited"
131681
+ },
131682
+ {
131683
+ "const": "editResolvedPart"
131684
+ },
131685
+ {
131686
+ "const": "error"
131687
+ }
131688
+ ]
131689
+ }
131690
+ },
131691
+ "required": [
131692
+ "kind",
131693
+ "storyType",
131694
+ "section",
131695
+ "headerFooterKind",
131696
+ "variant"
131697
+ ]
131698
+ },
131699
+ {
131700
+ "type": "object",
131701
+ "properties": {
131702
+ "kind": {
131703
+ "const": "story"
131704
+ },
131705
+ "storyType": {
131706
+ "const": "headerFooterPart"
131707
+ },
131708
+ "refId": {
131709
+ "type": "string"
131710
+ }
131711
+ },
131712
+ "required": [
131713
+ "kind",
131714
+ "storyType",
131715
+ "refId"
131716
+ ]
131717
+ },
131718
+ {
131719
+ "type": "object",
131720
+ "properties": {
131721
+ "kind": {
131722
+ "const": "story"
131723
+ },
131724
+ "storyType": {
131725
+ "const": "footnote"
131726
+ },
131727
+ "noteId": {
131728
+ "type": "string"
131729
+ }
131730
+ },
131731
+ "required": [
131732
+ "kind",
131733
+ "storyType",
131734
+ "noteId"
131735
+ ]
131736
+ },
131737
+ {
131738
+ "type": "object",
131739
+ "properties": {
131740
+ "kind": {
131741
+ "const": "story"
131742
+ },
131743
+ "storyType": {
131744
+ "const": "endnote"
131745
+ },
131746
+ "noteId": {
131747
+ "type": "string"
131748
+ }
131749
+ },
131750
+ "required": [
131751
+ "kind",
131752
+ "storyType",
131753
+ "noteId"
131754
+ ]
131755
+ }
131756
+ ],
131757
+ "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."
131758
+ },
131759
+ "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.",
131760
+ "agentVisible": false
130602
131761
  }
130603
131762
  ],
130604
131763
  "constraints": null,
@@ -130616,6 +131775,9 @@ const CONTRACT = {
130616
131775
  "offset": {
130617
131776
  "type": "integer",
130618
131777
  "minimum": 0
131778
+ },
131779
+ "in": {
131780
+ "$ref": "#/$defs/StoryLocator"
130619
131781
  }
130620
131782
  },
130621
131783
  "additionalProperties": false
@@ -130668,6 +131830,162 @@ const CONTRACT = {
130668
131830
  },
130669
131831
  "name": {
130670
131832
  "type": "string"
131833
+ },
131834
+ "story": {
131835
+ "oneOf": [
131836
+ {
131837
+ "type": "object",
131838
+ "properties": {
131839
+ "kind": {
131840
+ "const": "story"
131841
+ },
131842
+ "storyType": {
131843
+ "const": "body"
131844
+ }
131845
+ },
131846
+ "required": [
131847
+ "kind",
131848
+ "storyType"
131849
+ ]
131850
+ },
131851
+ {
131852
+ "type": "object",
131853
+ "properties": {
131854
+ "kind": {
131855
+ "const": "story"
131856
+ },
131857
+ "storyType": {
131858
+ "const": "headerFooterSlot"
131859
+ },
131860
+ "section": {
131861
+ "type": "object",
131862
+ "properties": {
131863
+ "kind": {
131864
+ "const": "section"
131865
+ },
131866
+ "sectionId": {
131867
+ "type": "string"
131868
+ }
131869
+ },
131870
+ "required": [
131871
+ "kind",
131872
+ "sectionId"
131873
+ ]
131874
+ },
131875
+ "headerFooterKind": {
131876
+ "oneOf": [
131877
+ {
131878
+ "const": "header"
131879
+ },
131880
+ {
131881
+ "const": "footer"
131882
+ }
131883
+ ]
131884
+ },
131885
+ "variant": {
131886
+ "oneOf": [
131887
+ {
131888
+ "const": "default"
131889
+ },
131890
+ {
131891
+ "const": "first"
131892
+ },
131893
+ {
131894
+ "const": "even"
131895
+ }
131896
+ ]
131897
+ },
131898
+ "resolution": {
131899
+ "oneOf": [
131900
+ {
131901
+ "const": "effective"
131902
+ },
131903
+ {
131904
+ "const": "explicit"
131905
+ }
131906
+ ]
131907
+ },
131908
+ "onWrite": {
131909
+ "oneOf": [
131910
+ {
131911
+ "const": "materializeIfInherited"
131912
+ },
131913
+ {
131914
+ "const": "editResolvedPart"
131915
+ },
131916
+ {
131917
+ "const": "error"
131918
+ }
131919
+ ]
131920
+ }
131921
+ },
131922
+ "required": [
131923
+ "kind",
131924
+ "storyType",
131925
+ "section",
131926
+ "headerFooterKind",
131927
+ "variant"
131928
+ ]
131929
+ },
131930
+ {
131931
+ "type": "object",
131932
+ "properties": {
131933
+ "kind": {
131934
+ "const": "story"
131935
+ },
131936
+ "storyType": {
131937
+ "const": "headerFooterPart"
131938
+ },
131939
+ "refId": {
131940
+ "type": "string"
131941
+ }
131942
+ },
131943
+ "required": [
131944
+ "kind",
131945
+ "storyType",
131946
+ "refId"
131947
+ ]
131948
+ },
131949
+ {
131950
+ "type": "object",
131951
+ "properties": {
131952
+ "kind": {
131953
+ "const": "story"
131954
+ },
131955
+ "storyType": {
131956
+ "const": "footnote"
131957
+ },
131958
+ "noteId": {
131959
+ "type": "string"
131960
+ }
131961
+ },
131962
+ "required": [
131963
+ "kind",
131964
+ "storyType",
131965
+ "noteId"
131966
+ ]
131967
+ },
131968
+ {
131969
+ "type": "object",
131970
+ "properties": {
131971
+ "kind": {
131972
+ "const": "story"
131973
+ },
131974
+ "storyType": {
131975
+ "const": "endnote"
131976
+ },
131977
+ "noteId": {
131978
+ "type": "string"
131979
+ }
131980
+ },
131981
+ "required": [
131982
+ "kind",
131983
+ "storyType",
131984
+ "noteId"
131985
+ ]
131986
+ }
131987
+ ],
131988
+ "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."
130671
131989
  }
130672
131990
  },
130673
131991
  "required": [
@@ -130697,6 +132015,9 @@ const CONTRACT = {
130697
132015
  },
130698
132016
  "name": {
130699
132017
  "type": "string"
132018
+ },
132019
+ "story": {
132020
+ "$ref": "#/$defs/StoryLocator"
130700
132021
  }
130701
132022
  },
130702
132023
  "additionalProperties": false,
@@ -130829,6 +132150,162 @@ const CONTRACT = {
130829
132150
  "range"
130830
132151
  ]
130831
132152
  }
132153
+ },
132154
+ "story": {
132155
+ "oneOf": [
132156
+ {
132157
+ "type": "object",
132158
+ "properties": {
132159
+ "kind": {
132160
+ "const": "story"
132161
+ },
132162
+ "storyType": {
132163
+ "const": "body"
132164
+ }
132165
+ },
132166
+ "required": [
132167
+ "kind",
132168
+ "storyType"
132169
+ ]
132170
+ },
132171
+ {
132172
+ "type": "object",
132173
+ "properties": {
132174
+ "kind": {
132175
+ "const": "story"
132176
+ },
132177
+ "storyType": {
132178
+ "const": "headerFooterSlot"
132179
+ },
132180
+ "section": {
132181
+ "type": "object",
132182
+ "properties": {
132183
+ "kind": {
132184
+ "const": "section"
132185
+ },
132186
+ "sectionId": {
132187
+ "type": "string"
132188
+ }
132189
+ },
132190
+ "required": [
132191
+ "kind",
132192
+ "sectionId"
132193
+ ]
132194
+ },
132195
+ "headerFooterKind": {
132196
+ "oneOf": [
132197
+ {
132198
+ "const": "header"
132199
+ },
132200
+ {
132201
+ "const": "footer"
132202
+ }
132203
+ ]
132204
+ },
132205
+ "variant": {
132206
+ "oneOf": [
132207
+ {
132208
+ "const": "default"
132209
+ },
132210
+ {
132211
+ "const": "first"
132212
+ },
132213
+ {
132214
+ "const": "even"
132215
+ }
132216
+ ]
132217
+ },
132218
+ "resolution": {
132219
+ "oneOf": [
132220
+ {
132221
+ "const": "effective"
132222
+ },
132223
+ {
132224
+ "const": "explicit"
132225
+ }
132226
+ ]
132227
+ },
132228
+ "onWrite": {
132229
+ "oneOf": [
132230
+ {
132231
+ "const": "materializeIfInherited"
132232
+ },
132233
+ {
132234
+ "const": "editResolvedPart"
132235
+ },
132236
+ {
132237
+ "const": "error"
132238
+ }
132239
+ ]
132240
+ }
132241
+ },
132242
+ "required": [
132243
+ "kind",
132244
+ "storyType",
132245
+ "section",
132246
+ "headerFooterKind",
132247
+ "variant"
132248
+ ]
132249
+ },
132250
+ {
132251
+ "type": "object",
132252
+ "properties": {
132253
+ "kind": {
132254
+ "const": "story"
132255
+ },
132256
+ "storyType": {
132257
+ "const": "headerFooterPart"
132258
+ },
132259
+ "refId": {
132260
+ "type": "string"
132261
+ }
132262
+ },
132263
+ "required": [
132264
+ "kind",
132265
+ "storyType",
132266
+ "refId"
132267
+ ]
132268
+ },
132269
+ {
132270
+ "type": "object",
132271
+ "properties": {
132272
+ "kind": {
132273
+ "const": "story"
132274
+ },
132275
+ "storyType": {
132276
+ "const": "footnote"
132277
+ },
132278
+ "noteId": {
132279
+ "type": "string"
132280
+ }
132281
+ },
132282
+ "required": [
132283
+ "kind",
132284
+ "storyType",
132285
+ "noteId"
132286
+ ]
132287
+ },
132288
+ {
132289
+ "type": "object",
132290
+ "properties": {
132291
+ "kind": {
132292
+ "const": "story"
132293
+ },
132294
+ "storyType": {
132295
+ "const": "endnote"
132296
+ },
132297
+ "noteId": {
132298
+ "type": "string"
132299
+ }
132300
+ },
132301
+ "required": [
132302
+ "kind",
132303
+ "storyType",
132304
+ "noteId"
132305
+ ]
132306
+ }
132307
+ ],
132308
+ "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."
130832
132309
  }
130833
132310
  },
130834
132311
  "required": [
@@ -130915,6 +132392,9 @@ const CONTRACT = {
130915
132392
  },
130916
132393
  "name": {
130917
132394
  "type": "string"
132395
+ },
132396
+ "story": {
132397
+ "$ref": "#/$defs/StoryLocator"
130918
132398
  }
130919
132399
  },
130920
132400
  "additionalProperties": false,
@@ -130980,6 +132460,9 @@ const CONTRACT = {
130980
132460
  },
130981
132461
  "name": {
130982
132462
  "type": "string"
132463
+ },
132464
+ "story": {
132465
+ "$ref": "#/$defs/StoryLocator"
130983
132466
  }
130984
132467
  },
130985
132468
  "additionalProperties": false,
@@ -131110,6 +132593,162 @@ const CONTRACT = {
131110
132593
  },
131111
132594
  "name": {
131112
132595
  "type": "string"
132596
+ },
132597
+ "story": {
132598
+ "oneOf": [
132599
+ {
132600
+ "type": "object",
132601
+ "properties": {
132602
+ "kind": {
132603
+ "const": "story"
132604
+ },
132605
+ "storyType": {
132606
+ "const": "body"
132607
+ }
132608
+ },
132609
+ "required": [
132610
+ "kind",
132611
+ "storyType"
132612
+ ]
132613
+ },
132614
+ {
132615
+ "type": "object",
132616
+ "properties": {
132617
+ "kind": {
132618
+ "const": "story"
132619
+ },
132620
+ "storyType": {
132621
+ "const": "headerFooterSlot"
132622
+ },
132623
+ "section": {
132624
+ "type": "object",
132625
+ "properties": {
132626
+ "kind": {
132627
+ "const": "section"
132628
+ },
132629
+ "sectionId": {
132630
+ "type": "string"
132631
+ }
132632
+ },
132633
+ "required": [
132634
+ "kind",
132635
+ "sectionId"
132636
+ ]
132637
+ },
132638
+ "headerFooterKind": {
132639
+ "oneOf": [
132640
+ {
132641
+ "const": "header"
132642
+ },
132643
+ {
132644
+ "const": "footer"
132645
+ }
132646
+ ]
132647
+ },
132648
+ "variant": {
132649
+ "oneOf": [
132650
+ {
132651
+ "const": "default"
132652
+ },
132653
+ {
132654
+ "const": "first"
132655
+ },
132656
+ {
132657
+ "const": "even"
132658
+ }
132659
+ ]
132660
+ },
132661
+ "resolution": {
132662
+ "oneOf": [
132663
+ {
132664
+ "const": "effective"
132665
+ },
132666
+ {
132667
+ "const": "explicit"
132668
+ }
132669
+ ]
132670
+ },
132671
+ "onWrite": {
132672
+ "oneOf": [
132673
+ {
132674
+ "const": "materializeIfInherited"
132675
+ },
132676
+ {
132677
+ "const": "editResolvedPart"
132678
+ },
132679
+ {
132680
+ "const": "error"
132681
+ }
132682
+ ]
132683
+ }
132684
+ },
132685
+ "required": [
132686
+ "kind",
132687
+ "storyType",
132688
+ "section",
132689
+ "headerFooterKind",
132690
+ "variant"
132691
+ ]
132692
+ },
132693
+ {
132694
+ "type": "object",
132695
+ "properties": {
132696
+ "kind": {
132697
+ "const": "story"
132698
+ },
132699
+ "storyType": {
132700
+ "const": "headerFooterPart"
132701
+ },
132702
+ "refId": {
132703
+ "type": "string"
132704
+ }
132705
+ },
132706
+ "required": [
132707
+ "kind",
132708
+ "storyType",
132709
+ "refId"
132710
+ ]
132711
+ },
132712
+ {
132713
+ "type": "object",
132714
+ "properties": {
132715
+ "kind": {
132716
+ "const": "story"
132717
+ },
132718
+ "storyType": {
132719
+ "const": "footnote"
132720
+ },
132721
+ "noteId": {
132722
+ "type": "string"
132723
+ }
132724
+ },
132725
+ "required": [
132726
+ "kind",
132727
+ "storyType",
132728
+ "noteId"
132729
+ ]
132730
+ },
132731
+ {
132732
+ "type": "object",
132733
+ "properties": {
132734
+ "kind": {
132735
+ "const": "story"
132736
+ },
132737
+ "storyType": {
132738
+ "const": "endnote"
132739
+ },
132740
+ "noteId": {
132741
+ "type": "string"
132742
+ }
132743
+ },
132744
+ "required": [
132745
+ "kind",
132746
+ "storyType",
132747
+ "noteId"
132748
+ ]
132749
+ }
132750
+ ],
132751
+ "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."
131113
132752
  }
131114
132753
  },
131115
132754
  "required": [
@@ -131146,6 +132785,9 @@ const CONTRACT = {
131146
132785
  },
131147
132786
  "name": {
131148
132787
  "type": "string"
132788
+ },
132789
+ "story": {
132790
+ "$ref": "#/$defs/StoryLocator"
131149
132791
  }
131150
132792
  },
131151
132793
  "additionalProperties": false,
@@ -131184,6 +132826,9 @@ const CONTRACT = {
131184
132826
  },
131185
132827
  "name": {
131186
132828
  "type": "string"
132829
+ },
132830
+ "story": {
132831
+ "$ref": "#/$defs/StoryLocator"
131187
132832
  }
131188
132833
  },
131189
132834
  "additionalProperties": false,
@@ -131249,6 +132894,9 @@ const CONTRACT = {
131249
132894
  },
131250
132895
  "name": {
131251
132896
  "type": "string"
132897
+ },
132898
+ "story": {
132899
+ "$ref": "#/$defs/StoryLocator"
131252
132900
  }
131253
132901
  },
131254
132902
  "additionalProperties": false,
@@ -131379,6 +133027,162 @@ const CONTRACT = {
131379
133027
  },
131380
133028
  "name": {
131381
133029
  "type": "string"
133030
+ },
133031
+ "story": {
133032
+ "oneOf": [
133033
+ {
133034
+ "type": "object",
133035
+ "properties": {
133036
+ "kind": {
133037
+ "const": "story"
133038
+ },
133039
+ "storyType": {
133040
+ "const": "body"
133041
+ }
133042
+ },
133043
+ "required": [
133044
+ "kind",
133045
+ "storyType"
133046
+ ]
133047
+ },
133048
+ {
133049
+ "type": "object",
133050
+ "properties": {
133051
+ "kind": {
133052
+ "const": "story"
133053
+ },
133054
+ "storyType": {
133055
+ "const": "headerFooterSlot"
133056
+ },
133057
+ "section": {
133058
+ "type": "object",
133059
+ "properties": {
133060
+ "kind": {
133061
+ "const": "section"
133062
+ },
133063
+ "sectionId": {
133064
+ "type": "string"
133065
+ }
133066
+ },
133067
+ "required": [
133068
+ "kind",
133069
+ "sectionId"
133070
+ ]
133071
+ },
133072
+ "headerFooterKind": {
133073
+ "oneOf": [
133074
+ {
133075
+ "const": "header"
133076
+ },
133077
+ {
133078
+ "const": "footer"
133079
+ }
133080
+ ]
133081
+ },
133082
+ "variant": {
133083
+ "oneOf": [
133084
+ {
133085
+ "const": "default"
133086
+ },
133087
+ {
133088
+ "const": "first"
133089
+ },
133090
+ {
133091
+ "const": "even"
133092
+ }
133093
+ ]
133094
+ },
133095
+ "resolution": {
133096
+ "oneOf": [
133097
+ {
133098
+ "const": "effective"
133099
+ },
133100
+ {
133101
+ "const": "explicit"
133102
+ }
133103
+ ]
133104
+ },
133105
+ "onWrite": {
133106
+ "oneOf": [
133107
+ {
133108
+ "const": "materializeIfInherited"
133109
+ },
133110
+ {
133111
+ "const": "editResolvedPart"
133112
+ },
133113
+ {
133114
+ "const": "error"
133115
+ }
133116
+ ]
133117
+ }
133118
+ },
133119
+ "required": [
133120
+ "kind",
133121
+ "storyType",
133122
+ "section",
133123
+ "headerFooterKind",
133124
+ "variant"
133125
+ ]
133126
+ },
133127
+ {
133128
+ "type": "object",
133129
+ "properties": {
133130
+ "kind": {
133131
+ "const": "story"
133132
+ },
133133
+ "storyType": {
133134
+ "const": "headerFooterPart"
133135
+ },
133136
+ "refId": {
133137
+ "type": "string"
133138
+ }
133139
+ },
133140
+ "required": [
133141
+ "kind",
133142
+ "storyType",
133143
+ "refId"
133144
+ ]
133145
+ },
133146
+ {
133147
+ "type": "object",
133148
+ "properties": {
133149
+ "kind": {
133150
+ "const": "story"
133151
+ },
133152
+ "storyType": {
133153
+ "const": "footnote"
133154
+ },
133155
+ "noteId": {
133156
+ "type": "string"
133157
+ }
133158
+ },
133159
+ "required": [
133160
+ "kind",
133161
+ "storyType",
133162
+ "noteId"
133163
+ ]
133164
+ },
133165
+ {
133166
+ "type": "object",
133167
+ "properties": {
133168
+ "kind": {
133169
+ "const": "story"
133170
+ },
133171
+ "storyType": {
133172
+ "const": "endnote"
133173
+ },
133174
+ "noteId": {
133175
+ "type": "string"
133176
+ }
133177
+ },
133178
+ "required": [
133179
+ "kind",
133180
+ "storyType",
133181
+ "noteId"
133182
+ ]
133183
+ }
133184
+ ],
133185
+ "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."
131382
133186
  }
131383
133187
  },
131384
133188
  "required": [
@@ -131408,6 +133212,9 @@ const CONTRACT = {
131408
133212
  },
131409
133213
  "name": {
131410
133214
  "type": "string"
133215
+ },
133216
+ "story": {
133217
+ "$ref": "#/$defs/StoryLocator"
131411
133218
  }
131412
133219
  },
131413
133220
  "additionalProperties": false,
@@ -131442,6 +133249,9 @@ const CONTRACT = {
131442
133249
  },
131443
133250
  "name": {
131444
133251
  "type": "string"
133252
+ },
133253
+ "story": {
133254
+ "$ref": "#/$defs/StoryLocator"
131445
133255
  }
131446
133256
  },
131447
133257
  "additionalProperties": false,
@@ -131507,6 +133317,9 @@ const CONTRACT = {
131507
133317
  },
131508
133318
  "name": {
131509
133319
  "type": "string"
133320
+ },
133321
+ "story": {
133322
+ "$ref": "#/$defs/StoryLocator"
131510
133323
  }
131511
133324
  },
131512
133325
  "additionalProperties": false,
@@ -131833,6 +133646,162 @@ const CONTRACT = {
131833
133646
  "range"
131834
133647
  ]
131835
133648
  }
133649
+ },
133650
+ "story": {
133651
+ "oneOf": [
133652
+ {
133653
+ "type": "object",
133654
+ "properties": {
133655
+ "kind": {
133656
+ "const": "story"
133657
+ },
133658
+ "storyType": {
133659
+ "const": "body"
133660
+ }
133661
+ },
133662
+ "required": [
133663
+ "kind",
133664
+ "storyType"
133665
+ ]
133666
+ },
133667
+ {
133668
+ "type": "object",
133669
+ "properties": {
133670
+ "kind": {
133671
+ "const": "story"
133672
+ },
133673
+ "storyType": {
133674
+ "const": "headerFooterSlot"
133675
+ },
133676
+ "section": {
133677
+ "type": "object",
133678
+ "properties": {
133679
+ "kind": {
133680
+ "const": "section"
133681
+ },
133682
+ "sectionId": {
133683
+ "type": "string"
133684
+ }
133685
+ },
133686
+ "required": [
133687
+ "kind",
133688
+ "sectionId"
133689
+ ]
133690
+ },
133691
+ "headerFooterKind": {
133692
+ "oneOf": [
133693
+ {
133694
+ "const": "header"
133695
+ },
133696
+ {
133697
+ "const": "footer"
133698
+ }
133699
+ ]
133700
+ },
133701
+ "variant": {
133702
+ "oneOf": [
133703
+ {
133704
+ "const": "default"
133705
+ },
133706
+ {
133707
+ "const": "first"
133708
+ },
133709
+ {
133710
+ "const": "even"
133711
+ }
133712
+ ]
133713
+ },
133714
+ "resolution": {
133715
+ "oneOf": [
133716
+ {
133717
+ "const": "effective"
133718
+ },
133719
+ {
133720
+ "const": "explicit"
133721
+ }
133722
+ ]
133723
+ },
133724
+ "onWrite": {
133725
+ "oneOf": [
133726
+ {
133727
+ "const": "materializeIfInherited"
133728
+ },
133729
+ {
133730
+ "const": "editResolvedPart"
133731
+ },
133732
+ {
133733
+ "const": "error"
133734
+ }
133735
+ ]
133736
+ }
133737
+ },
133738
+ "required": [
133739
+ "kind",
133740
+ "storyType",
133741
+ "section",
133742
+ "headerFooterKind",
133743
+ "variant"
133744
+ ]
133745
+ },
133746
+ {
133747
+ "type": "object",
133748
+ "properties": {
133749
+ "kind": {
133750
+ "const": "story"
133751
+ },
133752
+ "storyType": {
133753
+ "const": "headerFooterPart"
133754
+ },
133755
+ "refId": {
133756
+ "type": "string"
133757
+ }
133758
+ },
133759
+ "required": [
133760
+ "kind",
133761
+ "storyType",
133762
+ "refId"
133763
+ ]
133764
+ },
133765
+ {
133766
+ "type": "object",
133767
+ "properties": {
133768
+ "kind": {
133769
+ "const": "story"
133770
+ },
133771
+ "storyType": {
133772
+ "const": "footnote"
133773
+ },
133774
+ "noteId": {
133775
+ "type": "string"
133776
+ }
133777
+ },
133778
+ "required": [
133779
+ "kind",
133780
+ "storyType",
133781
+ "noteId"
133782
+ ]
133783
+ },
133784
+ {
133785
+ "type": "object",
133786
+ "properties": {
133787
+ "kind": {
133788
+ "const": "story"
133789
+ },
133790
+ "storyType": {
133791
+ "const": "endnote"
133792
+ },
133793
+ "noteId": {
133794
+ "type": "string"
133795
+ }
133796
+ },
133797
+ "required": [
133798
+ "kind",
133799
+ "storyType",
133800
+ "noteId"
133801
+ ]
133802
+ }
133803
+ ],
133804
+ "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."
131836
133805
  }
131837
133806
  },
131838
133807
  "required": [
@@ -133221,6 +135190,162 @@ const CONTRACT = {
133221
135190
  "range"
133222
135191
  ]
133223
135192
  }
135193
+ },
135194
+ "story": {
135195
+ "oneOf": [
135196
+ {
135197
+ "type": "object",
135198
+ "properties": {
135199
+ "kind": {
135200
+ "const": "story"
135201
+ },
135202
+ "storyType": {
135203
+ "const": "body"
135204
+ }
135205
+ },
135206
+ "required": [
135207
+ "kind",
135208
+ "storyType"
135209
+ ]
135210
+ },
135211
+ {
135212
+ "type": "object",
135213
+ "properties": {
135214
+ "kind": {
135215
+ "const": "story"
135216
+ },
135217
+ "storyType": {
135218
+ "const": "headerFooterSlot"
135219
+ },
135220
+ "section": {
135221
+ "type": "object",
135222
+ "properties": {
135223
+ "kind": {
135224
+ "const": "section"
135225
+ },
135226
+ "sectionId": {
135227
+ "type": "string"
135228
+ }
135229
+ },
135230
+ "required": [
135231
+ "kind",
135232
+ "sectionId"
135233
+ ]
135234
+ },
135235
+ "headerFooterKind": {
135236
+ "oneOf": [
135237
+ {
135238
+ "const": "header"
135239
+ },
135240
+ {
135241
+ "const": "footer"
135242
+ }
135243
+ ]
135244
+ },
135245
+ "variant": {
135246
+ "oneOf": [
135247
+ {
135248
+ "const": "default"
135249
+ },
135250
+ {
135251
+ "const": "first"
135252
+ },
135253
+ {
135254
+ "const": "even"
135255
+ }
135256
+ ]
135257
+ },
135258
+ "resolution": {
135259
+ "oneOf": [
135260
+ {
135261
+ "const": "effective"
135262
+ },
135263
+ {
135264
+ "const": "explicit"
135265
+ }
135266
+ ]
135267
+ },
135268
+ "onWrite": {
135269
+ "oneOf": [
135270
+ {
135271
+ "const": "materializeIfInherited"
135272
+ },
135273
+ {
135274
+ "const": "editResolvedPart"
135275
+ },
135276
+ {
135277
+ "const": "error"
135278
+ }
135279
+ ]
135280
+ }
135281
+ },
135282
+ "required": [
135283
+ "kind",
135284
+ "storyType",
135285
+ "section",
135286
+ "headerFooterKind",
135287
+ "variant"
135288
+ ]
135289
+ },
135290
+ {
135291
+ "type": "object",
135292
+ "properties": {
135293
+ "kind": {
135294
+ "const": "story"
135295
+ },
135296
+ "storyType": {
135297
+ "const": "headerFooterPart"
135298
+ },
135299
+ "refId": {
135300
+ "type": "string"
135301
+ }
135302
+ },
135303
+ "required": [
135304
+ "kind",
135305
+ "storyType",
135306
+ "refId"
135307
+ ]
135308
+ },
135309
+ {
135310
+ "type": "object",
135311
+ "properties": {
135312
+ "kind": {
135313
+ "const": "story"
135314
+ },
135315
+ "storyType": {
135316
+ "const": "footnote"
135317
+ },
135318
+ "noteId": {
135319
+ "type": "string"
135320
+ }
135321
+ },
135322
+ "required": [
135323
+ "kind",
135324
+ "storyType",
135325
+ "noteId"
135326
+ ]
135327
+ },
135328
+ {
135329
+ "type": "object",
135330
+ "properties": {
135331
+ "kind": {
135332
+ "const": "story"
135333
+ },
135334
+ "storyType": {
135335
+ "const": "endnote"
135336
+ },
135337
+ "noteId": {
135338
+ "type": "string"
135339
+ }
135340
+ },
135341
+ "required": [
135342
+ "kind",
135343
+ "storyType",
135344
+ "noteId"
135345
+ ]
135346
+ }
135347
+ ],
135348
+ "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."
133224
135349
  }
133225
135350
  },
133226
135351
  "required": [
@@ -136097,6 +138222,162 @@ const CONTRACT = {
136097
138222
  "range"
136098
138223
  ]
136099
138224
  }
138225
+ },
138226
+ "story": {
138227
+ "oneOf": [
138228
+ {
138229
+ "type": "object",
138230
+ "properties": {
138231
+ "kind": {
138232
+ "const": "story"
138233
+ },
138234
+ "storyType": {
138235
+ "const": "body"
138236
+ }
138237
+ },
138238
+ "required": [
138239
+ "kind",
138240
+ "storyType"
138241
+ ]
138242
+ },
138243
+ {
138244
+ "type": "object",
138245
+ "properties": {
138246
+ "kind": {
138247
+ "const": "story"
138248
+ },
138249
+ "storyType": {
138250
+ "const": "headerFooterSlot"
138251
+ },
138252
+ "section": {
138253
+ "type": "object",
138254
+ "properties": {
138255
+ "kind": {
138256
+ "const": "section"
138257
+ },
138258
+ "sectionId": {
138259
+ "type": "string"
138260
+ }
138261
+ },
138262
+ "required": [
138263
+ "kind",
138264
+ "sectionId"
138265
+ ]
138266
+ },
138267
+ "headerFooterKind": {
138268
+ "oneOf": [
138269
+ {
138270
+ "const": "header"
138271
+ },
138272
+ {
138273
+ "const": "footer"
138274
+ }
138275
+ ]
138276
+ },
138277
+ "variant": {
138278
+ "oneOf": [
138279
+ {
138280
+ "const": "default"
138281
+ },
138282
+ {
138283
+ "const": "first"
138284
+ },
138285
+ {
138286
+ "const": "even"
138287
+ }
138288
+ ]
138289
+ },
138290
+ "resolution": {
138291
+ "oneOf": [
138292
+ {
138293
+ "const": "effective"
138294
+ },
138295
+ {
138296
+ "const": "explicit"
138297
+ }
138298
+ ]
138299
+ },
138300
+ "onWrite": {
138301
+ "oneOf": [
138302
+ {
138303
+ "const": "materializeIfInherited"
138304
+ },
138305
+ {
138306
+ "const": "editResolvedPart"
138307
+ },
138308
+ {
138309
+ "const": "error"
138310
+ }
138311
+ ]
138312
+ }
138313
+ },
138314
+ "required": [
138315
+ "kind",
138316
+ "storyType",
138317
+ "section",
138318
+ "headerFooterKind",
138319
+ "variant"
138320
+ ]
138321
+ },
138322
+ {
138323
+ "type": "object",
138324
+ "properties": {
138325
+ "kind": {
138326
+ "const": "story"
138327
+ },
138328
+ "storyType": {
138329
+ "const": "headerFooterPart"
138330
+ },
138331
+ "refId": {
138332
+ "type": "string"
138333
+ }
138334
+ },
138335
+ "required": [
138336
+ "kind",
138337
+ "storyType",
138338
+ "refId"
138339
+ ]
138340
+ },
138341
+ {
138342
+ "type": "object",
138343
+ "properties": {
138344
+ "kind": {
138345
+ "const": "story"
138346
+ },
138347
+ "storyType": {
138348
+ "const": "footnote"
138349
+ },
138350
+ "noteId": {
138351
+ "type": "string"
138352
+ }
138353
+ },
138354
+ "required": [
138355
+ "kind",
138356
+ "storyType",
138357
+ "noteId"
138358
+ ]
138359
+ },
138360
+ {
138361
+ "type": "object",
138362
+ "properties": {
138363
+ "kind": {
138364
+ "const": "story"
138365
+ },
138366
+ "storyType": {
138367
+ "const": "endnote"
138368
+ },
138369
+ "noteId": {
138370
+ "type": "string"
138371
+ }
138372
+ },
138373
+ "required": [
138374
+ "kind",
138375
+ "storyType",
138376
+ "noteId"
138377
+ ]
138378
+ }
138379
+ ],
138380
+ "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."
136100
138381
  }
136101
138382
  },
136102
138383
  "required": [
@@ -138500,6 +140781,162 @@ const CONTRACT = {
138500
140781
  "range"
138501
140782
  ]
138502
140783
  }
140784
+ },
140785
+ "story": {
140786
+ "oneOf": [
140787
+ {
140788
+ "type": "object",
140789
+ "properties": {
140790
+ "kind": {
140791
+ "const": "story"
140792
+ },
140793
+ "storyType": {
140794
+ "const": "body"
140795
+ }
140796
+ },
140797
+ "required": [
140798
+ "kind",
140799
+ "storyType"
140800
+ ]
140801
+ },
140802
+ {
140803
+ "type": "object",
140804
+ "properties": {
140805
+ "kind": {
140806
+ "const": "story"
140807
+ },
140808
+ "storyType": {
140809
+ "const": "headerFooterSlot"
140810
+ },
140811
+ "section": {
140812
+ "type": "object",
140813
+ "properties": {
140814
+ "kind": {
140815
+ "const": "section"
140816
+ },
140817
+ "sectionId": {
140818
+ "type": "string"
140819
+ }
140820
+ },
140821
+ "required": [
140822
+ "kind",
140823
+ "sectionId"
140824
+ ]
140825
+ },
140826
+ "headerFooterKind": {
140827
+ "oneOf": [
140828
+ {
140829
+ "const": "header"
140830
+ },
140831
+ {
140832
+ "const": "footer"
140833
+ }
140834
+ ]
140835
+ },
140836
+ "variant": {
140837
+ "oneOf": [
140838
+ {
140839
+ "const": "default"
140840
+ },
140841
+ {
140842
+ "const": "first"
140843
+ },
140844
+ {
140845
+ "const": "even"
140846
+ }
140847
+ ]
140848
+ },
140849
+ "resolution": {
140850
+ "oneOf": [
140851
+ {
140852
+ "const": "effective"
140853
+ },
140854
+ {
140855
+ "const": "explicit"
140856
+ }
140857
+ ]
140858
+ },
140859
+ "onWrite": {
140860
+ "oneOf": [
140861
+ {
140862
+ "const": "materializeIfInherited"
140863
+ },
140864
+ {
140865
+ "const": "editResolvedPart"
140866
+ },
140867
+ {
140868
+ "const": "error"
140869
+ }
140870
+ ]
140871
+ }
140872
+ },
140873
+ "required": [
140874
+ "kind",
140875
+ "storyType",
140876
+ "section",
140877
+ "headerFooterKind",
140878
+ "variant"
140879
+ ]
140880
+ },
140881
+ {
140882
+ "type": "object",
140883
+ "properties": {
140884
+ "kind": {
140885
+ "const": "story"
140886
+ },
140887
+ "storyType": {
140888
+ "const": "headerFooterPart"
140889
+ },
140890
+ "refId": {
140891
+ "type": "string"
140892
+ }
140893
+ },
140894
+ "required": [
140895
+ "kind",
140896
+ "storyType",
140897
+ "refId"
140898
+ ]
140899
+ },
140900
+ {
140901
+ "type": "object",
140902
+ "properties": {
140903
+ "kind": {
140904
+ "const": "story"
140905
+ },
140906
+ "storyType": {
140907
+ "const": "footnote"
140908
+ },
140909
+ "noteId": {
140910
+ "type": "string"
140911
+ }
140912
+ },
140913
+ "required": [
140914
+ "kind",
140915
+ "storyType",
140916
+ "noteId"
140917
+ ]
140918
+ },
140919
+ {
140920
+ "type": "object",
140921
+ "properties": {
140922
+ "kind": {
140923
+ "const": "story"
140924
+ },
140925
+ "storyType": {
140926
+ "const": "endnote"
140927
+ },
140928
+ "noteId": {
140929
+ "type": "string"
140930
+ }
140931
+ },
140932
+ "required": [
140933
+ "kind",
140934
+ "storyType",
140935
+ "noteId"
140936
+ ]
140937
+ }
140938
+ ],
140939
+ "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."
138503
140940
  }
138504
140941
  },
138505
140942
  "required": [
@@ -139527,6 +141964,162 @@ const CONTRACT = {
139527
141964
  "range"
139528
141965
  ]
139529
141966
  }
141967
+ },
141968
+ "story": {
141969
+ "oneOf": [
141970
+ {
141971
+ "type": "object",
141972
+ "properties": {
141973
+ "kind": {
141974
+ "const": "story"
141975
+ },
141976
+ "storyType": {
141977
+ "const": "body"
141978
+ }
141979
+ },
141980
+ "required": [
141981
+ "kind",
141982
+ "storyType"
141983
+ ]
141984
+ },
141985
+ {
141986
+ "type": "object",
141987
+ "properties": {
141988
+ "kind": {
141989
+ "const": "story"
141990
+ },
141991
+ "storyType": {
141992
+ "const": "headerFooterSlot"
141993
+ },
141994
+ "section": {
141995
+ "type": "object",
141996
+ "properties": {
141997
+ "kind": {
141998
+ "const": "section"
141999
+ },
142000
+ "sectionId": {
142001
+ "type": "string"
142002
+ }
142003
+ },
142004
+ "required": [
142005
+ "kind",
142006
+ "sectionId"
142007
+ ]
142008
+ },
142009
+ "headerFooterKind": {
142010
+ "oneOf": [
142011
+ {
142012
+ "const": "header"
142013
+ },
142014
+ {
142015
+ "const": "footer"
142016
+ }
142017
+ ]
142018
+ },
142019
+ "variant": {
142020
+ "oneOf": [
142021
+ {
142022
+ "const": "default"
142023
+ },
142024
+ {
142025
+ "const": "first"
142026
+ },
142027
+ {
142028
+ "const": "even"
142029
+ }
142030
+ ]
142031
+ },
142032
+ "resolution": {
142033
+ "oneOf": [
142034
+ {
142035
+ "const": "effective"
142036
+ },
142037
+ {
142038
+ "const": "explicit"
142039
+ }
142040
+ ]
142041
+ },
142042
+ "onWrite": {
142043
+ "oneOf": [
142044
+ {
142045
+ "const": "materializeIfInherited"
142046
+ },
142047
+ {
142048
+ "const": "editResolvedPart"
142049
+ },
142050
+ {
142051
+ "const": "error"
142052
+ }
142053
+ ]
142054
+ }
142055
+ },
142056
+ "required": [
142057
+ "kind",
142058
+ "storyType",
142059
+ "section",
142060
+ "headerFooterKind",
142061
+ "variant"
142062
+ ]
142063
+ },
142064
+ {
142065
+ "type": "object",
142066
+ "properties": {
142067
+ "kind": {
142068
+ "const": "story"
142069
+ },
142070
+ "storyType": {
142071
+ "const": "headerFooterPart"
142072
+ },
142073
+ "refId": {
142074
+ "type": "string"
142075
+ }
142076
+ },
142077
+ "required": [
142078
+ "kind",
142079
+ "storyType",
142080
+ "refId"
142081
+ ]
142082
+ },
142083
+ {
142084
+ "type": "object",
142085
+ "properties": {
142086
+ "kind": {
142087
+ "const": "story"
142088
+ },
142089
+ "storyType": {
142090
+ "const": "footnote"
142091
+ },
142092
+ "noteId": {
142093
+ "type": "string"
142094
+ }
142095
+ },
142096
+ "required": [
142097
+ "kind",
142098
+ "storyType",
142099
+ "noteId"
142100
+ ]
142101
+ },
142102
+ {
142103
+ "type": "object",
142104
+ "properties": {
142105
+ "kind": {
142106
+ "const": "story"
142107
+ },
142108
+ "storyType": {
142109
+ "const": "endnote"
142110
+ },
142111
+ "noteId": {
142112
+ "type": "string"
142113
+ }
142114
+ },
142115
+ "required": [
142116
+ "kind",
142117
+ "storyType",
142118
+ "noteId"
142119
+ ]
142120
+ }
142121
+ ],
142122
+ "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."
139530
142123
  }
139531
142124
  },
139532
142125
  "required": [
@@ -144822,6 +147415,162 @@ const CONTRACT = {
144822
147415
  "range"
144823
147416
  ]
144824
147417
  }
147418
+ },
147419
+ "story": {
147420
+ "oneOf": [
147421
+ {
147422
+ "type": "object",
147423
+ "properties": {
147424
+ "kind": {
147425
+ "const": "story"
147426
+ },
147427
+ "storyType": {
147428
+ "const": "body"
147429
+ }
147430
+ },
147431
+ "required": [
147432
+ "kind",
147433
+ "storyType"
147434
+ ]
147435
+ },
147436
+ {
147437
+ "type": "object",
147438
+ "properties": {
147439
+ "kind": {
147440
+ "const": "story"
147441
+ },
147442
+ "storyType": {
147443
+ "const": "headerFooterSlot"
147444
+ },
147445
+ "section": {
147446
+ "type": "object",
147447
+ "properties": {
147448
+ "kind": {
147449
+ "const": "section"
147450
+ },
147451
+ "sectionId": {
147452
+ "type": "string"
147453
+ }
147454
+ },
147455
+ "required": [
147456
+ "kind",
147457
+ "sectionId"
147458
+ ]
147459
+ },
147460
+ "headerFooterKind": {
147461
+ "oneOf": [
147462
+ {
147463
+ "const": "header"
147464
+ },
147465
+ {
147466
+ "const": "footer"
147467
+ }
147468
+ ]
147469
+ },
147470
+ "variant": {
147471
+ "oneOf": [
147472
+ {
147473
+ "const": "default"
147474
+ },
147475
+ {
147476
+ "const": "first"
147477
+ },
147478
+ {
147479
+ "const": "even"
147480
+ }
147481
+ ]
147482
+ },
147483
+ "resolution": {
147484
+ "oneOf": [
147485
+ {
147486
+ "const": "effective"
147487
+ },
147488
+ {
147489
+ "const": "explicit"
147490
+ }
147491
+ ]
147492
+ },
147493
+ "onWrite": {
147494
+ "oneOf": [
147495
+ {
147496
+ "const": "materializeIfInherited"
147497
+ },
147498
+ {
147499
+ "const": "editResolvedPart"
147500
+ },
147501
+ {
147502
+ "const": "error"
147503
+ }
147504
+ ]
147505
+ }
147506
+ },
147507
+ "required": [
147508
+ "kind",
147509
+ "storyType",
147510
+ "section",
147511
+ "headerFooterKind",
147512
+ "variant"
147513
+ ]
147514
+ },
147515
+ {
147516
+ "type": "object",
147517
+ "properties": {
147518
+ "kind": {
147519
+ "const": "story"
147520
+ },
147521
+ "storyType": {
147522
+ "const": "headerFooterPart"
147523
+ },
147524
+ "refId": {
147525
+ "type": "string"
147526
+ }
147527
+ },
147528
+ "required": [
147529
+ "kind",
147530
+ "storyType",
147531
+ "refId"
147532
+ ]
147533
+ },
147534
+ {
147535
+ "type": "object",
147536
+ "properties": {
147537
+ "kind": {
147538
+ "const": "story"
147539
+ },
147540
+ "storyType": {
147541
+ "const": "footnote"
147542
+ },
147543
+ "noteId": {
147544
+ "type": "string"
147545
+ }
147546
+ },
147547
+ "required": [
147548
+ "kind",
147549
+ "storyType",
147550
+ "noteId"
147551
+ ]
147552
+ },
147553
+ {
147554
+ "type": "object",
147555
+ "properties": {
147556
+ "kind": {
147557
+ "const": "story"
147558
+ },
147559
+ "storyType": {
147560
+ "const": "endnote"
147561
+ },
147562
+ "noteId": {
147563
+ "type": "string"
147564
+ }
147565
+ },
147566
+ "required": [
147567
+ "kind",
147568
+ "storyType",
147569
+ "noteId"
147570
+ ]
147571
+ }
147572
+ ],
147573
+ "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."
144825
147574
  }
144826
147575
  },
144827
147576
  "required": [