@ankhorage/repository 0.8.5 → 0.10.0

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 (72) hide show
  1. package/CHANGELOG.md +16 -0
  2. package/README.md +1 -1
  3. package/dist/cli/commands/materialize/runMaterializeCommandAsync.d.ts.map +1 -1
  4. package/dist/cli/commands/materialize/runMaterializeCommandAsync.js +1 -0
  5. package/dist/cli/commands/materialize/runMaterializeCommandAsync.js.map +1 -1
  6. package/dist/github/index.d.ts +4 -1
  7. package/dist/github/index.d.ts.map +1 -1
  8. package/dist/github/index.js +1 -0
  9. package/dist/github/index.js.map +1 -1
  10. package/dist/github/index.test.js +4 -1
  11. package/dist/github/index.test.js.map +1 -1
  12. package/dist/github/publicAuthentication.test.d.ts +2 -0
  13. package/dist/github/publicAuthentication.test.d.ts.map +1 -0
  14. package/dist/github/publicAuthentication.test.js +78 -0
  15. package/dist/github/publicAuthentication.test.js.map +1 -0
  16. package/dist/providers/github/adapters/createGitHubHttpClient.js +8 -2
  17. package/dist/providers/github/adapters/createGitHubHttpClient.js.map +1 -1
  18. package/dist/providers/github/adapters/createGitHubHttpClient.test.js +29 -0
  19. package/dist/providers/github/adapters/createGitHubHttpClient.test.js.map +1 -1
  20. package/dist/providers/github/adapters/createGitHubHttpRepositoryAuthenticatedUserInventory.test.d.ts +2 -0
  21. package/dist/providers/github/adapters/createGitHubHttpRepositoryAuthenticatedUserInventory.test.d.ts.map +1 -0
  22. package/dist/providers/github/adapters/createGitHubHttpRepositoryAuthenticatedUserInventory.test.js +112 -0
  23. package/dist/providers/github/adapters/createGitHubHttpRepositoryAuthenticatedUserInventory.test.js.map +1 -0
  24. package/dist/providers/github/adapters/createGitHubHttpRepositoryDiscoveryGateway.d.ts +2 -2
  25. package/dist/providers/github/adapters/createGitHubHttpRepositoryDiscoveryGateway.d.ts.map +1 -1
  26. package/dist/providers/github/adapters/createGitHubHttpRepositoryDiscoveryGateway.js +60 -6
  27. package/dist/providers/github/adapters/createGitHubHttpRepositoryDiscoveryGateway.js.map +1 -1
  28. package/dist/providers/github/adapters/createGitHubHttpRepositoryReadGateway.authorization.test.d.ts +2 -0
  29. package/dist/providers/github/adapters/createGitHubHttpRepositoryReadGateway.authorization.test.d.ts.map +1 -0
  30. package/dist/providers/github/adapters/createGitHubHttpRepositoryReadGateway.authorization.test.js +41 -0
  31. package/dist/providers/github/adapters/createGitHubHttpRepositoryReadGateway.authorization.test.js.map +1 -0
  32. package/dist/providers/github/adapters/createGitHubHttpRepositoryReadGateway.d.ts +2 -2
  33. package/dist/providers/github/adapters/createGitHubHttpRepositoryReadGateway.d.ts.map +1 -1
  34. package/dist/providers/github/adapters/createGitHubHttpRepositoryReadGateway.js.map +1 -1
  35. package/dist/providers/github/definitions/GitHubAuthenticatedUserRepositoryInventoryOptions.d.ts +8 -0
  36. package/dist/providers/github/definitions/GitHubAuthenticatedUserRepositoryInventoryOptions.d.ts.map +1 -0
  37. package/dist/providers/github/definitions/GitHubAuthenticatedUserRepositoryInventoryOptions.js +2 -0
  38. package/dist/providers/github/definitions/GitHubAuthenticatedUserRepositoryInventoryOptions.js.map +1 -0
  39. package/dist/providers/github/definitions/GitHubAuthenticatedUserRepositoryInventoryResult.d.ts +6 -0
  40. package/dist/providers/github/definitions/GitHubAuthenticatedUserRepositoryInventoryResult.d.ts.map +1 -0
  41. package/dist/providers/github/definitions/GitHubAuthenticatedUserRepositoryInventoryResult.js +2 -0
  42. package/dist/providers/github/definitions/GitHubAuthenticatedUserRepositoryInventoryResult.js.map +1 -0
  43. package/dist/providers/github/definitions/GitHubRepositoryDiscoveryOptions.d.ts +6 -1
  44. package/dist/providers/github/definitions/GitHubRepositoryDiscoveryOptions.d.ts.map +1 -1
  45. package/dist/providers/github/definitions/GitHubRepositoryDiscoveryResult.d.ts +2 -1
  46. package/dist/providers/github/definitions/GitHubRepositoryDiscoveryResult.d.ts.map +1 -1
  47. package/dist/providers/github/definitions/GitHubRepositoryMaterializationOptions.d.ts +3 -0
  48. package/dist/providers/github/definitions/GitHubRepositoryMaterializationOptions.d.ts.map +1 -1
  49. package/dist/providers/github/definitions/GitHubRepositoryVisibility.d.ts +1 -1
  50. package/dist/providers/github/definitions/GitHubRepositoryVisibility.d.ts.map +1 -1
  51. package/dist/providers/github/ports/GitHubRepositoryDiscoveryGateway.d.ts +5 -1
  52. package/dist/providers/github/ports/GitHubRepositoryDiscoveryGateway.d.ts.map +1 -1
  53. package/dist/providers/github/services/discoverGitHubAuthenticatedUserRepositoriesAsync.d.ts +12 -0
  54. package/dist/providers/github/services/discoverGitHubAuthenticatedUserRepositoriesAsync.d.ts.map +1 -0
  55. package/dist/providers/github/services/discoverGitHubAuthenticatedUserRepositoriesAsync.js +33 -0
  56. package/dist/providers/github/services/discoverGitHubAuthenticatedUserRepositoriesAsync.js.map +1 -0
  57. package/dist/providers/github/services/discoverGitHubAuthenticatedUserRepositoriesAsync.test.d.ts +2 -0
  58. package/dist/providers/github/services/discoverGitHubAuthenticatedUserRepositoriesAsync.test.d.ts.map +1 -0
  59. package/dist/providers/github/services/discoverGitHubAuthenticatedUserRepositoriesAsync.test.js +75 -0
  60. package/dist/providers/github/services/discoverGitHubAuthenticatedUserRepositoriesAsync.test.js.map +1 -0
  61. package/dist/providers/github/services/discoverGitHubAuthenticatedUserRepositoriesWithGatewayAsync.d.ts +6 -0
  62. package/dist/providers/github/services/discoverGitHubAuthenticatedUserRepositoriesWithGatewayAsync.d.ts.map +1 -0
  63. package/dist/providers/github/services/discoverGitHubAuthenticatedUserRepositoriesWithGatewayAsync.js +5 -0
  64. package/dist/providers/github/services/discoverGitHubAuthenticatedUserRepositoriesWithGatewayAsync.js.map +1 -0
  65. package/dist/providers/github/services/discoverGitHubAuthenticatedUserRepositoriesWithGatewayAsync.test.d.ts +2 -0
  66. package/dist/providers/github/services/discoverGitHubAuthenticatedUserRepositoriesWithGatewayAsync.test.d.ts.map +1 -0
  67. package/dist/providers/github/services/discoverGitHubAuthenticatedUserRepositoriesWithGatewayAsync.test.js +57 -0
  68. package/dist/providers/github/services/discoverGitHubAuthenticatedUserRepositoriesWithGatewayAsync.test.js.map +1 -0
  69. package/dist/providers/github/services/materializeGitHubRepositoryAsync.d.ts.map +1 -1
  70. package/dist/providers/github/services/materializeGitHubRepositoryAsync.js +3 -1
  71. package/dist/providers/github/services/materializeGitHubRepositoryAsync.js.map +1 -1
  72. package/package.json +1 -1
@@ -0,0 +1,57 @@
1
+ import { expect, test } from 'bun:test';
2
+ import { discoverGitHubAuthenticatedUserRepositoriesWithGatewayAsync } from './discoverGitHubAuthenticatedUserRepositoriesWithGatewayAsync.js';
3
+ test('uses the dedicated authenticated-user inventory boundary without an owner lookup', async () => {
4
+ let calls = 0;
5
+ const result = await discoverGitHubAuthenticatedUserRepositoriesWithGatewayAsync({ authentication: { kind: 'user', accessToken: 'user-token' } }, createGateway(() => {
6
+ calls += 1;
7
+ }));
8
+ expect(calls).toBe(1);
9
+ expect(result.repositories.map((repository) => repository.owner)).toEqual([
10
+ 'an-owner',
11
+ 'a-collaborator',
12
+ 'an-organization',
13
+ ]);
14
+ });
15
+ test('passes cancellation to the authenticated-user inventory boundary', async () => {
16
+ const controller = new AbortController();
17
+ let receivedSignal;
18
+ await discoverGitHubAuthenticatedUserRepositoriesWithGatewayAsync({ authentication: { kind: 'user', accessToken: 'user-token' }, signal: controller.signal }, {
19
+ listAuthenticatedUserRepositoriesAsync: (signal) => {
20
+ receivedSignal = signal;
21
+ return Promise.resolve([]);
22
+ },
23
+ });
24
+ expect(receivedSignal).toBe(controller.signal);
25
+ });
26
+ /** Create a multi-owner inventory fixture with no owner-resolution capability. */
27
+ function createGateway(onList) {
28
+ return {
29
+ listAuthenticatedUserRepositoriesAsync: () => {
30
+ onList();
31
+ return Promise.resolve([
32
+ {
33
+ id: '1',
34
+ name: 'owned',
35
+ owner: 'an-owner',
36
+ url: 'https://github.com/an-owner/owned',
37
+ visibility: 'private',
38
+ },
39
+ {
40
+ id: '2',
41
+ name: 'collaboration',
42
+ owner: 'a-collaborator',
43
+ url: 'https://github.com/a-collaborator/collaboration',
44
+ visibility: 'public',
45
+ },
46
+ {
47
+ id: '3',
48
+ name: 'team',
49
+ owner: 'an-organization',
50
+ url: 'https://github.com/an-organization/team',
51
+ visibility: 'internal',
52
+ },
53
+ ]);
54
+ },
55
+ };
56
+ }
57
+ //# sourceMappingURL=discoverGitHubAuthenticatedUserRepositoriesWithGatewayAsync.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"discoverGitHubAuthenticatedUserRepositoriesWithGatewayAsync.test.js","sourceRoot":"","sources":["../../../../src/providers/github/services/discoverGitHubAuthenticatedUserRepositoriesWithGatewayAsync.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC;AAGxC,OAAO,EAAE,2DAA2D,EAAE,MAAM,kEAAkE,CAAC;AAE/I,IAAI,CAAC,kFAAkF,EAAE,KAAK,IAAI,EAAE;IAClG,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,MAAM,MAAM,GAAG,MAAM,2DAA2D,CAC9E,EAAE,cAAc,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,YAAY,EAAE,EAAE,EAC/D,aAAa,CAAC,GAAG,EAAE;QACjB,KAAK,IAAI,CAAC,CAAC;IACb,CAAC,CAAC,CACH,CAAC;IAEF,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACtB,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC;QACxE,UAAU;QACV,gBAAgB;QAChB,iBAAiB;KAClB,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,kEAAkE,EAAE,KAAK,IAAI,EAAE;IAClF,MAAM,UAAU,GAAG,IAAI,eAAe,EAAE,CAAC;IACzC,IAAI,cAAuC,CAAC;IAC5C,MAAM,2DAA2D,CAC/D,EAAE,cAAc,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,YAAY,EAAE,EAAE,MAAM,EAAE,UAAU,CAAC,MAAM,EAAE,EAC1F;QACE,sCAAsC,EAAE,CAAC,MAAM,EAAE,EAAE;YACjD,cAAc,GAAG,MAAM,CAAC;YACxB,OAAO,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAC7B,CAAC;KACF,CACF,CAAC;IACF,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;AACjD,CAAC,CAAC,CAAC;AAEH,kFAAkF;AAClF,SAAS,aAAa,CAAC,MAAkB;IACvC,OAAO;QACL,sCAAsC,EAAE,GAAG,EAAE;YAC3C,MAAM,EAAE,CAAC;YACT,OAAO,OAAO,CAAC,OAAO,CAAC;gBACrB;oBACE,EAAE,EAAE,GAAG;oBACP,IAAI,EAAE,OAAO;oBACb,KAAK,EAAE,UAAU;oBACjB,GAAG,EAAE,mCAAmC;oBACxC,UAAU,EAAE,SAAS;iBACtB;gBACD;oBACE,EAAE,EAAE,GAAG;oBACP,IAAI,EAAE,eAAe;oBACrB,KAAK,EAAE,gBAAgB;oBACvB,GAAG,EAAE,iDAAiD;oBACtD,UAAU,EAAE,QAAQ;iBACrB;gBACD;oBACE,EAAE,EAAE,GAAG;oBACP,IAAI,EAAE,MAAM;oBACZ,KAAK,EAAE,iBAAiB;oBACxB,GAAG,EAAE,yCAAyC;oBAC9C,UAAU,EAAE,UAAU;iBACvB;aACF,CAAC,CAAC;QACL,CAAC;KACF,CAAC;AACJ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"materializeGitHubRepositoryAsync.d.ts","sourceRoot":"","sources":["../../../../src/providers/github/services/materializeGitHubRepositoryAsync.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,sCAAsC,EAAE,MAAM,0DAA0D,CAAC;AACvH,OAAO,KAAK,EAAE,qCAAqC,EAAE,MAAM,yDAAyD,CAAC;AAGrH,yFAAyF;AACzF,wBAAsB,gCAAgC,CACpD,OAAO,EAAE,sCAAsC,GAC9C,OAAO,CAAC,qCAAqC,CAAC,CAKhD"}
1
+ {"version":3,"file":"materializeGitHubRepositoryAsync.d.ts","sourceRoot":"","sources":["../../../../src/providers/github/services/materializeGitHubRepositoryAsync.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,sCAAsC,EAAE,MAAM,0DAA0D,CAAC;AACvH,OAAO,KAAK,EAAE,qCAAqC,EAAE,MAAM,yDAAyD,CAAC;AAGrH,yFAAyF;AACzF,wBAAsB,gCAAgC,CACpD,OAAO,EAAE,sCAAsC,GAC9C,OAAO,CAAC,qCAAqC,CAAC,CAOhD"}
@@ -2,6 +2,8 @@ import { createGitHubHttpRepositoryReadGateway } from '../adapters/createGitHubH
2
2
  import { materializeGitHubRepositoryWithGatewayAsync } from './materializeGitHubRepositoryWithGatewayAsync.js';
3
3
  /*** Materialize one GitHub repository URL into an isolated local filesystem snapshot. */
4
4
  export async function materializeGitHubRepositoryAsync(options) {
5
- return materializeGitHubRepositoryWithGatewayAsync(options, createGitHubHttpRepositoryReadGateway());
5
+ return materializeGitHubRepositoryWithGatewayAsync(options, createGitHubHttpRepositoryReadGateway(fetch, {
6
+ authentication: options.authentication ?? 'anonymous',
7
+ }));
6
8
  }
7
9
  //# sourceMappingURL=materializeGitHubRepositoryAsync.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"materializeGitHubRepositoryAsync.js","sourceRoot":"","sources":["../../../../src/providers/github/services/materializeGitHubRepositoryAsync.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qCAAqC,EAAE,MAAM,sDAAsD,CAAC;AAG7G,OAAO,EAAE,2CAA2C,EAAE,MAAM,kDAAkD,CAAC;AAE/G,yFAAyF;AACzF,MAAM,CAAC,KAAK,UAAU,gCAAgC,CACpD,OAA+C;IAE/C,OAAO,2CAA2C,CAChD,OAAO,EACP,qCAAqC,EAAE,CACxC,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"materializeGitHubRepositoryAsync.js","sourceRoot":"","sources":["../../../../src/providers/github/services/materializeGitHubRepositoryAsync.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qCAAqC,EAAE,MAAM,sDAAsD,CAAC;AAG7G,OAAO,EAAE,2CAA2C,EAAE,MAAM,kDAAkD,CAAC;AAE/G,yFAAyF;AACzF,MAAM,CAAC,KAAK,UAAU,gCAAgC,CACpD,OAA+C;IAE/C,OAAO,2CAA2C,CAChD,OAAO,EACP,qCAAqC,CAAC,KAAK,EAAE;QAC3C,cAAc,EAAE,OAAO,CAAC,cAAc,IAAI,WAAW;KACtD,CAAC,CACH,CAAC;AACJ,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ankhorage/repository",
3
- "version": "0.8.5",
3
+ "version": "0.10.0",
4
4
  "description": "Standalone repository capability for connecting and managing an app project's source repository.",
5
5
  "type": "module",
6
6
  "license": "MIT",