repository-provider 35.2.21 → 35.2.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.
package/README.md CHANGED
@@ -181,15 +181,17 @@ console.log(await readme.string);
181
181
  * [Parameters](#parameters-41)
182
182
  * [initialize](#initialize-1)
183
183
  * [Parameters](#parameters-42)
184
- * [MessageDestination](#messagedestination)
184
+ * [DecodedRepositoryName](#decodedrepositoryname)
185
185
  * [Properties](#properties-2)
186
+ * [MessageDestination](#messagedestination)
187
+ * [Properties](#properties-3)
186
188
  * [name](#name-2)
187
189
  * [name](#name-3)
188
190
  * [messageDestination](#messagedestination-1)
189
191
  * [parsedName](#parsedname)
190
192
  * [Branch](#branch)
191
193
  * [Parameters](#parameters-43)
192
- * [Properties](#properties-3)
194
+ * [Properties](#properties-4)
193
195
  * [url](#url)
194
196
  * [refType](#reftype)
195
197
  * [isWritable](#iswritable-1)
@@ -207,10 +209,10 @@ console.log(await readme.string);
207
209
  * [Parameters](#parameters-48)
208
210
  * [CommitResult](#commitresult)
209
211
  * [Parameters](#parameters-49)
210
- * [Properties](#properties-4)
212
+ * [Properties](#properties-5)
211
213
  * [Commit](#commit-1)
212
214
  * [Parameters](#parameters-50)
213
- * [Properties](#properties-5)
215
+ * [Properties](#properties-6)
214
216
  * [Hook](#hook)
215
217
  * [Issue](#issue)
216
218
  * [Milestone](#milestone)
@@ -229,7 +231,7 @@ console.log(await readme.string);
229
231
  * [Parameters](#parameters-56)
230
232
  * [NamedObject](#namedobject)
231
233
  * [Parameters](#parameters-57)
232
- * [Properties](#properties-6)
234
+ * [Properties](#properties-7)
233
235
  * [displayName](#displayname)
234
236
  * [condensedName](#condensedname)
235
237
  * [fullCondensedName](#fullcondensedname)
@@ -295,7 +297,7 @@ console.log(await readme.string);
295
297
  * [Project](#project)
296
298
  * [PullRequest](#pullrequest)
297
299
  * [Parameters](#parameters-73)
298
- * [Properties](#properties-7)
300
+ * [Properties](#properties-8)
299
301
  * [source](#source)
300
302
  * [fullName](#fullname-3)
301
303
  * [url](#url-3)
@@ -352,7 +354,7 @@ console.log(await readme.string);
352
354
  * [isProtected](#isprotected-2)
353
355
  * [RepositoryGroup](#repositorygroup-1)
354
356
  * [Parameters](#parameters-83)
355
- * [Properties](#properties-8)
357
+ * [Properties](#properties-9)
356
358
  * [attributeMapping](#attributemapping-1)
357
359
  * [type](#type-1)
358
360
  * [homePageURL](#homepageurl-2)
@@ -360,7 +362,7 @@ console.log(await readme.string);
360
362
  * [Parameters](#parameters-84)
361
363
  * [Repository](#repository-4)
362
364
  * [Parameters](#parameters-85)
363
- * [Properties](#properties-9)
365
+ * [Properties](#properties-10)
364
366
  * [slug](#slug-2)
365
367
  * [url](#url-4)
366
368
  * [entry](#entry-2)
@@ -799,6 +801,8 @@ base, group, repository and branch.
799
801
  * `name` **[string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)?** 
800
802
  * `focus` **[string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)** where lies the focus if only one path component is given (optional, default `"repository"`)
801
803
 
804
+ Returns **[DecodedRepositoryName](#decodedrepositoryname)** result
805
+
802
806
  ### createRepository
803
807
 
804
808
  Create a repository.
@@ -1050,6 +1054,8 @@ base, group, repository and branch.
1050
1054
  * `name` **[string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)?** 
1051
1055
  * `focus` **[string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)** where lies the focus if only one path component is given (optional, default `"repository"`)
1052
1056
 
1057
+ Returns **[DecodedRepositoryName](#decodedrepositoryname)** result
1058
+
1053
1059
  ### createRepository
1054
1060
 
1055
1061
  Create a repository.
@@ -1204,6 +1210,17 @@ Creates a new provider for a given set of options.
1204
1210
 
1205
1211
  Returns **([BaseProvider](#baseprovider) | [undefined](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/undefined))** newly created provider or undefined if options are not sufficient to construct a provider
1206
1212
 
1213
+ ## DecodedRepositoryName
1214
+
1215
+ Type: [Object](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object)
1216
+
1217
+ ### Properties
1218
+
1219
+ * `base` **[string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)?** 
1220
+ * `group` **[string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)?** 
1221
+ * `repository` **[string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)?** 
1222
+ * `branch` **[string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)?** 
1223
+
1207
1224
  ## MessageDestination
1208
1225
 
1209
1226
  Type: [Object](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object)
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "repository-provider",
3
- "version": "35.2.21",
3
+ "version": "35.2.22",
4
4
  "publishConfig": {
5
5
  "access": "public",
6
6
  "provenance": true
@@ -43,12 +43,12 @@
43
43
  },
44
44
  "devDependencies": {
45
45
  "ava": "^6.1.3",
46
- "browser-ava": "^2.2.15",
47
- "c8": "^9.1.0",
46
+ "browser-ava": "^2.2.21",
47
+ "c8": "^10.1.2",
48
48
  "documentation": "^14.0.3",
49
49
  "repository-provider-test-support": "^3.1.5",
50
50
  "semantic-release": "^24.0.0",
51
- "typescript": "^5.4.5"
51
+ "typescript": "^5.5.3"
52
52
  },
53
53
  "engines": {
54
54
  "node": ">=20.12.2"
@@ -20,6 +20,14 @@ import {
20
20
  * @typedef {import('./milestone.mjs').Milestone} Milestone
21
21
  */
22
22
 
23
+ /**
24
+ * @typedef {Object} DecodedRepositoryName
25
+ * @property {string} [base]
26
+ * @property {string} [group]
27
+ * @property {string} [repository]
28
+ * @property {string} [branch]
29
+ */
30
+
23
31
  /**
24
32
  * @typedef {Object} MessageDestination
25
33
  * Endpoint to deliver log messages to.
@@ -251,7 +259,7 @@ export class BaseProvider extends BaseObject {
251
259
  * base, group, repository and branch.
252
260
  * @param {string} [name]
253
261
  * @param {string} focus where lies the focus if only one path component is given
254
- * @return {{base: string|undefined, group: string|undefined, repository: string|undefined, branch: string|undefined}} with separated attributes
262
+ * @returns {DecodedRepositoryName} result
255
263
  */
256
264
  parseName(name, focus = "repository") {
257
265
  const result = {};
@@ -323,23 +331,28 @@ export class BaseProvider extends BaseObject {
323
331
  * List provider objects of a given type.
324
332
  *
325
333
  * @param {string} type name of the method to deliver typed iterator projects,milestones,hooks,repositories,branches,tags
326
- * @param {string[]|string|undefined} patterns group / repository filter
334
+ * @param {string[]} patterns group / repository filter
327
335
  * @return {AsyncIterable<Repository|PullRequest|Branch|Tag|Project|Milestone|Hook>} all matching repositories of the providers
328
336
  */
329
337
  async *list(type, patterns) {
330
- if (patterns === undefined) {
338
+ if (patterns.length === 0) {
331
339
  // @ts-ignore
332
340
  for await (const group of this.repositoryGroups()) {
333
341
  yield* group[type]();
334
342
  }
335
343
  } else {
336
- for (const pattern of asArray(patterns)) {
344
+ for (const pattern of patterns) {
337
345
  // @ts-ignore
338
- const [groupPattern, repoPattern] = stripBaseName(
346
+ let [groupPattern, repoPattern] = stripBaseName(
339
347
  pattern,
340
348
  this.repositoryBases
341
349
  ).split(/\//);
342
350
 
351
+ if(repoPattern) {
352
+ // TODO do cleanup in stripBase()
353
+ repoPattern = repoPattern.replace(/\.git(#.*)?$/, (all,b) => b || "");
354
+ }
355
+
343
356
  // @ts-ignore
344
357
  for await (const group of this.repositoryGroups(groupPattern)) {
345
358
  yield* group[type](repoPattern);
@@ -355,7 +368,7 @@ export class BaseProvider extends BaseObject {
355
368
  */
356
369
  async *projects(patterns) {
357
370
  // @ts-ignore
358
- yield* this.list("projects", patterns);
371
+ yield* this.list("projects", asArray(patterns));
359
372
  }
360
373
 
361
374
  /**
@@ -365,7 +378,7 @@ export class BaseProvider extends BaseObject {
365
378
  */
366
379
  async *milestones(patterns) {
367
380
  // @ts-ignore
368
- yield* this.list("milestones", patterns);
381
+ yield* this.list("milestones", asArray(patterns));
369
382
  }
370
383
 
371
384
  /**
@@ -375,7 +388,7 @@ export class BaseProvider extends BaseObject {
375
388
  */
376
389
  async *repositories(patterns) {
377
390
  // @ts-ignore
378
- yield* this.list("repositories", patterns);
391
+ yield* this.list("repositories", asArray(patterns));
379
392
  }
380
393
 
381
394
  /**
@@ -385,7 +398,7 @@ export class BaseProvider extends BaseObject {
385
398
  */
386
399
  async *branches(patterns) {
387
400
  // @ts-ignore
388
- yield* this.list("branches", patterns);
401
+ yield* this.list("branches", asArray(patterns));
389
402
  }
390
403
 
391
404
  /**
@@ -395,7 +408,7 @@ export class BaseProvider extends BaseObject {
395
408
  */
396
409
  async *tags(patterns) {
397
410
  // @ts-ignore
398
- yield* this.list("tags", patterns);
411
+ yield* this.list("tags", asArray(patterns));
399
412
  }
400
413
 
401
414
  /**
@@ -405,7 +418,7 @@ export class BaseProvider extends BaseObject {
405
418
  */
406
419
  async *hooks(patterns) {
407
420
  // @ts-ignore
408
- yield* this.list("hooks", patterns);
421
+ yield* this.list("hooks", asArray(patterns));
409
422
  }
410
423
 
411
424
  /**
@@ -415,7 +428,7 @@ export class BaseProvider extends BaseObject {
415
428
  */
416
429
  async *pullRequests(patterns) {
417
430
  // @ts-ignore
418
- yield* this.list("pullRequests", patterns);
431
+ yield* this.list("pullRequests", asArray(patterns));
419
432
  }
420
433
 
421
434
  /**
@@ -84,4 +84,4 @@ export const language_attribute: AttributeDefinition;
84
84
  * @type {AttributeDefinition}
85
85
  */
86
86
  export const type_attribute: AttributeDefinition;
87
- export type AttributeDefinition = import('pacc').AttributeDefinition;
87
+ export type AttributeDefinition = import("pacc").AttributeDefinition;
@@ -2,6 +2,13 @@
2
2
  * @typedef {import('./project.mjs').Project} Project
3
3
  * @typedef {import('./milestone.mjs').Milestone} Milestone
4
4
  */
5
+ /**
6
+ * @typedef {Object} DecodedRepositoryName
7
+ * @property {string} [base]
8
+ * @property {string} [group]
9
+ * @property {string} [repository]
10
+ * @property {string} [branch]
11
+ */
5
12
  /**
6
13
  * @typedef {Object} MessageDestination
7
14
  * Endpoint to deliver log messages to.
@@ -77,7 +84,7 @@ export class BaseProvider extends BaseObject {
77
84
  description?: string;
78
85
  set?: Function;
79
86
  get?: Function;
80
- env?: string | string[];
87
+ env?: string[] | string;
81
88
  };
82
89
  };
83
90
  /**
@@ -153,14 +160,9 @@ export class BaseProvider extends BaseObject {
153
160
  * base, group, repository and branch.
154
161
  * @param {string} [name]
155
162
  * @param {string} focus where lies the focus if only one path component is given
156
- * @return {{base: string|undefined, group: string|undefined, repository: string|undefined, branch: string|undefined}} with separated attributes
163
+ * @returns {DecodedRepositoryName} result
157
164
  */
158
- parseName(name?: string, focus?: string): {
159
- base: string | undefined;
160
- group: string | undefined;
161
- repository: string | undefined;
162
- branch: string | undefined;
163
- };
165
+ parseName(name?: string, focus?: string): DecodedRepositoryName;
164
166
  /**
165
167
  * Create a repository.
166
168
  * @param {string} name of group and repository
@@ -172,10 +174,10 @@ export class BaseProvider extends BaseObject {
172
174
  * List provider objects of a given type.
173
175
  *
174
176
  * @param {string} type name of the method to deliver typed iterator projects,milestones,hooks,repositories,branches,tags
175
- * @param {string[]|string|undefined} patterns group / repository filter
177
+ * @param {string[]} patterns group / repository filter
176
178
  * @return {AsyncIterable<Repository|PullRequest|Branch|Tag|Project|Milestone|Hook>} all matching repositories of the providers
177
179
  */
178
- list(type: string, patterns: string[] | string | undefined): AsyncIterable<Repository | PullRequest | Branch | Tag | Project | Milestone | Hook>;
180
+ list(type: string, patterns: string[]): AsyncIterable<Repository | PullRequest | Branch | Tag | Project | Milestone | Hook>;
179
181
  /**
180
182
  * List projects.
181
183
  * @param {string[]|string} [patterns]
@@ -249,8 +251,14 @@ export class BaseProvider extends BaseObject {
249
251
  get entryClass(): typeof ContentEntry;
250
252
  get pullRequestClass(): typeof PullRequest;
251
253
  }
252
- export type Project = import('./project.mjs').Project;
253
- export type Milestone = import('./milestone.mjs').Milestone;
254
+ export type Project = import("./project.mjs").Project;
255
+ export type Milestone = import("./milestone.mjs").Milestone;
256
+ export type DecodedRepositoryName = {
257
+ base?: string;
258
+ group?: string;
259
+ repository?: string;
260
+ branch?: string;
261
+ };
254
262
  /**
255
263
  * Endpoint to deliver log messages to.
256
264
  */
package/types/hook.d.mts CHANGED
@@ -18,7 +18,7 @@ export class Hook extends OwnedObject {
18
18
  default?: any;
19
19
  set?: Function;
20
20
  get?: Function;
21
- env?: string | string[];
21
+ env?: string[] | string;
22
22
  };
23
23
  content_type: {
24
24
  default: string;
@@ -32,7 +32,7 @@ export class Hook extends OwnedObject {
32
32
  description?: string;
33
33
  set?: Function;
34
34
  get?: Function;
35
- env?: string | string[];
35
+ env?: string[] | string;
36
36
  };
37
37
  insecure_ssl: import("pacc").AttributeDefinition;
38
38
  events: {
@@ -109,6 +109,6 @@ export class OwnedObject extends NamedObject {
109
109
  get entryClass(): any;
110
110
  get hookClass(): any;
111
111
  }
112
- export type BaseProvider = import('./base-provider.mjs').BaseProvider;
113
- export type Repository = import('./repository.mjs').Repository;
112
+ export type BaseProvider = import("./base-provider.mjs").BaseProvider;
113
+ export type Repository = import("./repository.mjs").Repository;
114
114
  import { NamedObject } from "./named-object.mjs";
@@ -83,7 +83,7 @@ export class PullRequest extends OwnedObject {
83
83
  description?: string;
84
84
  set?: Function;
85
85
  get?: Function;
86
- env?: string | string[];
86
+ env?: string[] | string;
87
87
  };
88
88
  /**
89
89
  * Locked state of the pull request.
package/types/ref.d.mts CHANGED
@@ -66,6 +66,6 @@ export class Ref extends OwnedObject {
66
66
  */
67
67
  [Symbol.asyncIterator](): AsyncGenerator<ContentEntry>;
68
68
  }
69
- export type Repository = import('./repository.mjs').Repository;
69
+ export type Repository = import("./repository.mjs").Repository;
70
70
  import { OwnedObject } from "./owned-object.mjs";
71
71
  import { ContentEntry } from "content-entry";
@@ -3,17 +3,17 @@ declare const RepositoryGroup_base: {
3
3
  [x: string]: any;
4
4
  "__#2@#repositories": Map<any, any>;
5
5
  normalizeRepositoryName(name: string, forLookup: boolean): string;
6
- repository(name?: string): Promise<import("./repository.mjs").Repository>;
7
- repositories(patterns?: string | string[]): AsyncIterable<import("./repository.mjs").Repository>;
8
- lookup(type: string, name?: string, split?: Function, defaultItem?: any): Promise<OwnedObject>;
9
- list(type: string, patterns?: string | string[], split?: Function, defaultItem?: any): AsyncIterable<OwnedObject>;
6
+ repository(name?: string): Promise<import("./repository.mjs").Repository | undefined>;
7
+ repositories(patterns?: string[] | string): AsyncIterable<import("./repository.mjs").Repository>;
8
+ lookup(type: string, name?: string, split?: Function, defaultItem?: any): Promise<OwnedObject | undefined>;
9
+ list(type: string, patterns?: string[] | string, split?: Function, defaultItem?: any): AsyncIterable<OwnedObject>;
10
10
  createRepository(name: string, options?: any): Promise<import("./repository.mjs").Repository>;
11
11
  addRepository(name: string, options?: any): Promise<import("./repository.mjs").Repository>;
12
12
  _addRepository(repository: any): void;
13
13
  deleteRepository(name: string): Promise<any>;
14
14
  initializeRepositories(): void;
15
- branch(name: string): Promise<import("./branch.mjs").Branch>;
16
- branches(patterns?: string | string[]): AsyncIterable<import("./branch.mjs").Branch>;
15
+ branch(name: string): Promise<import("./branch.mjs").Branch | undefined>;
16
+ branches(patterns?: string[] | string): AsyncIterable<import("./branch.mjs").Branch>;
17
17
  tag(name: any): Promise<OwnedObject>;
18
18
  tags(patterns: any): AsyncGenerator<OwnedObject, void, undefined>;
19
19
  pullRequest(name: any): Promise<OwnedObject>;
@@ -39,7 +39,7 @@ export class Repository extends OwnedObject {
39
39
  description?: string;
40
40
  set?: Function;
41
41
  get?: Function;
42
- env?: string | string[];
42
+ env?: string[] | string;
43
43
  };
44
44
  cloneURL: import("pacc").AttributeDefinition;
45
45
  isArchived: import("pacc").AttributeDefinition;
@@ -3,17 +3,17 @@ declare const SingleGroupProvider_base: {
3
3
  [x: string]: any;
4
4
  "__#2@#repositories": Map<any, any>;
5
5
  normalizeRepositoryName(name: string, forLookup: boolean): string;
6
- repository(name?: string): Promise<Repository>;
7
- repositories(patterns?: string | string[]): AsyncIterable<Repository>;
8
- lookup(type: string, name?: string, split?: Function, defaultItem?: any): Promise<import("./owned-object.mjs").OwnedObject>;
9
- list(type: string, patterns?: string | string[], split?: Function, defaultItem?: any): AsyncIterable<import("./owned-object.mjs").OwnedObject>;
6
+ repository(name?: string): Promise<Repository | undefined>;
7
+ repositories(patterns?: string[] | string): AsyncIterable<Repository>;
8
+ lookup(type: string, name?: string, split?: Function, defaultItem?: any): Promise<import("./owned-object.mjs").OwnedObject | undefined>;
9
+ list(type: string, patterns?: string[] | string, split?: Function, defaultItem?: any): AsyncIterable<import("./owned-object.mjs").OwnedObject>;
10
10
  createRepository(name: string, options?: any): Promise<Repository>;
11
11
  addRepository(name: string, options?: any): Promise<Repository>;
12
12
  _addRepository(repository: any): void;
13
13
  deleteRepository(name: string): Promise<any>;
14
14
  initializeRepositories(): void;
15
- branch(name: string): Promise<import("./branch.mjs").Branch>;
16
- branches(patterns?: string | string[]): AsyncIterable<import("./branch.mjs").Branch>;
15
+ branch(name: string): Promise<import("./branch.mjs").Branch | undefined>;
16
+ branches(patterns?: string[] | string): AsyncIterable<import("./branch.mjs").Branch>;
17
17
  tag(name: any): Promise<import("./owned-object.mjs").OwnedObject>;
18
18
  tags(patterns: any): AsyncGenerator<import("./owned-object.mjs").OwnedObject, void, undefined>;
19
19
  pullRequest(name: any): Promise<import("./owned-object.mjs").OwnedObject>;