@theia/plugin 1.26.0-next.2 → 1.26.0-next.22

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.
Files changed (2) hide show
  1. package/package.json +2 -2
  2. package/src/theia.d.ts +63 -0
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@theia/plugin",
3
- "version": "1.26.0-next.2+08722fad0ec",
3
+ "version": "1.26.0-next.22+1265154246d",
4
4
  "description": "Theia - Plugin API",
5
5
  "types": "./src/theia.d.ts",
6
6
  "publishConfig": {
@@ -32,5 +32,5 @@
32
32
  "nyc": {
33
33
  "extends": "../../configs/nyc.json"
34
34
  },
35
- "gitHead": "08722fad0ecdd3259457c34db61b86c8da6b61c8"
35
+ "gitHead": "1265154246d98e44c0e1ee479aa9d42b2615d9d1"
36
36
  }
package/src/theia.d.ts CHANGED
@@ -9232,6 +9232,20 @@ export module '@theia/plugin' {
9232
9232
  * @return A [disposable](#Disposable) that unregisters this provider when being disposed.
9233
9233
  */
9234
9234
  export function registerCallHierarchyProvider(selector: DocumentSelector, provider: CallHierarchyProvider): Disposable;
9235
+
9236
+ /**
9237
+ * Register a linked editing range provider.
9238
+ *
9239
+ * Multiple providers can be registered for a language. In that case providers are sorted
9240
+ * by their {@link languages.match score} and the best-matching provider that has a result is used. Failure
9241
+ * of the selected provider will cause a failure of the whole operation.
9242
+ *
9243
+ * @param selector A selector that defines the documents this provider is applicable to.
9244
+ * @param provider A linked editing range provider.
9245
+ * @return A {@link Disposable} that unregisters this provider when being disposed.
9246
+ */
9247
+ export function registerLinkedEditingRangeProvider(selector: DocumentSelector, provider: LinkedEditingRangeProvider): Disposable;
9248
+
9235
9249
  }
9236
9250
 
9237
9251
  /**
@@ -9648,6 +9662,11 @@ export module '@theia/plugin' {
9648
9662
  */
9649
9663
  readonly name: string;
9650
9664
 
9665
+ /**
9666
+ * The workspace folder of this session or `undefined` for a folderless setup.
9667
+ */
9668
+ readonly workspaceFolder: WorkspaceFolder | undefined;
9669
+
9651
9670
  /**
9652
9671
  * The "resolved" [debug configuration](#DebugConfiguration) of this session.
9653
9672
  */
@@ -11334,6 +11353,50 @@ export module '@theia/plugin' {
11334
11353
  provideCallHierarchyOutgoingCalls(item: CallHierarchyItem, token: CancellationToken): ProviderResult<CallHierarchyOutgoingCall[]>;
11335
11354
  }
11336
11355
 
11356
+ /**
11357
+ * Represents a list of ranges that can be edited together along with a word pattern to describe valid range contents.
11358
+ */
11359
+ export class LinkedEditingRanges {
11360
+ /**
11361
+ * Create a new linked editing ranges object.
11362
+ *
11363
+ * @param ranges A list of ranges that can be edited together
11364
+ * @param wordPattern An optional word pattern that describes valid contents for the given ranges
11365
+ */
11366
+ constructor(ranges: Range[], wordPattern?: RegExp);
11367
+
11368
+ /**
11369
+ * A list of ranges that can be edited together. The ranges must have
11370
+ * identical length and text content. The ranges cannot overlap.
11371
+ */
11372
+ readonly ranges: Range[];
11373
+
11374
+ /**
11375
+ * An optional word pattern that describes valid contents for the given ranges.
11376
+ * If no pattern is provided, the language configuration's word pattern will be used.
11377
+ */
11378
+ readonly wordPattern?: RegExp;
11379
+ }
11380
+
11381
+ /**
11382
+ * The linked editing range provider interface defines the contract between extensions and
11383
+ * the linked editing feature.
11384
+ */
11385
+ export interface LinkedEditingRangeProvider {
11386
+ /**
11387
+ * For a given position in a document, returns the range of the symbol at the position and all ranges
11388
+ * that have the same content. A change to one of the ranges can be applied to all other ranges if the new content
11389
+ * is valid. An optional word pattern can be returned with the result to describe valid contents.
11390
+ * If no result-specific word pattern is provided, the word pattern from the language configuration is used.
11391
+ *
11392
+ * @param document The document in which the provider was invoked.
11393
+ * @param position The position at which the provider was invoked.
11394
+ * @param token A cancellation token.
11395
+ * @return A list of ranges that can be edited together
11396
+ */
11397
+ provideLinkedEditingRanges(document: TextDocument, position: Position, token: CancellationToken): ProviderResult<LinkedEditingRanges>;
11398
+ }
11399
+
11337
11400
  /**
11338
11401
  * Represents a session of a currently logged in user.
11339
11402
  */