@pantheon-systems/css-client 0.4.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 (89) hide show
  1. package/dist/auth.d.ts +54 -0
  2. package/dist/auth.d.ts.map +1 -0
  3. package/dist/auth.js +72 -0
  4. package/dist/auth.js.map +1 -0
  5. package/dist/broker.d.ts +41 -0
  6. package/dist/broker.d.ts.map +1 -0
  7. package/dist/broker.js +187 -0
  8. package/dist/broker.js.map +1 -0
  9. package/dist/client.d.ts +138 -0
  10. package/dist/client.d.ts.map +1 -0
  11. package/dist/client.js +130 -0
  12. package/dist/client.js.map +1 -0
  13. package/dist/content.d.ts +45 -0
  14. package/dist/content.d.ts.map +1 -0
  15. package/dist/content.js +65 -0
  16. package/dist/content.js.map +1 -0
  17. package/dist/endpoints/agent-edit.d.ts +79 -0
  18. package/dist/endpoints/agent-edit.d.ts.map +1 -0
  19. package/dist/endpoints/agent-edit.js +125 -0
  20. package/dist/endpoints/agent-edit.js.map +1 -0
  21. package/dist/endpoints/agent-registry.d.ts +59 -0
  22. package/dist/endpoints/agent-registry.d.ts.map +1 -0
  23. package/dist/endpoints/agent-registry.js +96 -0
  24. package/dist/endpoints/agent-registry.js.map +1 -0
  25. package/dist/endpoints/base.d.ts +49 -0
  26. package/dist/endpoints/base.d.ts.map +1 -0
  27. package/dist/endpoints/base.js +150 -0
  28. package/dist/endpoints/base.js.map +1 -0
  29. package/dist/endpoints/branches.d.ts +32 -0
  30. package/dist/endpoints/branches.d.ts.map +1 -0
  31. package/dist/endpoints/branches.js +69 -0
  32. package/dist/endpoints/branches.js.map +1 -0
  33. package/dist/endpoints/checkpoints.d.ts +36 -0
  34. package/dist/endpoints/checkpoints.d.ts.map +1 -0
  35. package/dist/endpoints/checkpoints.js +76 -0
  36. package/dist/endpoints/checkpoints.js.map +1 -0
  37. package/dist/endpoints/documents.d.ts +46 -0
  38. package/dist/endpoints/documents.d.ts.map +1 -0
  39. package/dist/endpoints/documents.js +101 -0
  40. package/dist/endpoints/documents.js.map +1 -0
  41. package/dist/endpoints/index.d.ts +15 -0
  42. package/dist/endpoints/index.d.ts.map +1 -0
  43. package/dist/endpoints/index.js +16 -0
  44. package/dist/endpoints/index.js.map +1 -0
  45. package/dist/endpoints/merge.d.ts +51 -0
  46. package/dist/endpoints/merge.d.ts.map +1 -0
  47. package/dist/endpoints/merge.js +104 -0
  48. package/dist/endpoints/merge.js.map +1 -0
  49. package/dist/endpoints/presence.d.ts +55 -0
  50. package/dist/endpoints/presence.d.ts.map +1 -0
  51. package/dist/endpoints/presence.js +72 -0
  52. package/dist/endpoints/presence.js.map +1 -0
  53. package/dist/endpoints/sites.d.ts +20 -0
  54. package/dist/endpoints/sites.d.ts.map +1 -0
  55. package/dist/endpoints/sites.js +38 -0
  56. package/dist/endpoints/sites.js.map +1 -0
  57. package/dist/endpoints/versions.d.ts +37 -0
  58. package/dist/endpoints/versions.d.ts.map +1 -0
  59. package/dist/endpoints/versions.js +64 -0
  60. package/dist/endpoints/versions.js.map +1 -0
  61. package/dist/errors.d.ts +61 -0
  62. package/dist/errors.d.ts.map +1 -0
  63. package/dist/errors.js +87 -0
  64. package/dist/errors.js.map +1 -0
  65. package/dist/index.d.ts +20 -0
  66. package/dist/index.d.ts.map +1 -0
  67. package/dist/index.js +20 -0
  68. package/dist/index.js.map +1 -0
  69. package/dist/jwt-utils.d.ts +13 -0
  70. package/dist/jwt-utils.d.ts.map +1 -0
  71. package/dist/jwt-utils.js +45 -0
  72. package/dist/jwt-utils.js.map +1 -0
  73. package/dist/oauth.d.ts +64 -0
  74. package/dist/oauth.d.ts.map +1 -0
  75. package/dist/oauth.js +62 -0
  76. package/dist/oauth.js.map +1 -0
  77. package/dist/realtime.d.ts +314 -0
  78. package/dist/realtime.d.ts.map +1 -0
  79. package/dist/realtime.js +615 -0
  80. package/dist/realtime.js.map +1 -0
  81. package/dist/types.d.ts +703 -0
  82. package/dist/types.d.ts.map +1 -0
  83. package/dist/types.js +7 -0
  84. package/dist/types.js.map +1 -0
  85. package/dist/utils.d.ts +3 -0
  86. package/dist/utils.d.ts.map +1 -0
  87. package/dist/utils.js +17 -0
  88. package/dist/utils.js.map +1 -0
  89. package/package.json +56 -0
@@ -0,0 +1,150 @@
1
+ /**
2
+ * Base Endpoint
3
+ *
4
+ * Shared HTTP request logic for all endpoints.
5
+ */
6
+ import { P1ApiError, NetworkError, AuthenticationError, NotFoundError, ConflictError, ValidationError, SessionExpiredError, } from '../errors.js';
7
+ export class BaseEndpoint {
8
+ baseUrl;
9
+ authProvider;
10
+ principal;
11
+ sessionId;
12
+ tokenRefresher;
13
+ constructor(config) {
14
+ // Remove trailing slash from base URL
15
+ this.baseUrl = config.baseUrl.replace(/\/$/, '');
16
+ this.authProvider = config.authProvider;
17
+ this.principal = config.principal;
18
+ this.sessionId = config.sessionId;
19
+ this.tokenRefresher = config.tokenRefresher;
20
+ }
21
+ /**
22
+ * Make an authenticated HTTP request to the P1 API.
23
+ */
24
+ async request(path, options) {
25
+ const url = `${this.baseUrl}${path}`;
26
+ const headers = {
27
+ 'Content-Type': 'application/json',
28
+ ...options.headers,
29
+ };
30
+ // Add authentication header
31
+ if (this.authProvider) {
32
+ try {
33
+ const authValue = await this.authProvider();
34
+ // Check if this is an API key (prefixed with "ApiKey ") or a Bearer token
35
+ if (authValue.startsWith('ApiKey ')) {
36
+ headers['X-API-Key'] = authValue.substring(7); // Remove "ApiKey " prefix
37
+ }
38
+ else {
39
+ headers['Authorization'] = authValue;
40
+ }
41
+ }
42
+ catch (error) {
43
+ throw new AuthenticationError(error instanceof Error ? error.message : 'Failed to get auth token');
44
+ }
45
+ }
46
+ // Add principal headers if available
47
+ if (this.principal) {
48
+ headers['X-Principal-Id'] = this.principal.id;
49
+ headers['X-Principal-Type'] = this.principal.type;
50
+ }
51
+ // Add session ID header for agent authorization
52
+ if (this.sessionId) {
53
+ headers['X-Agent-Session-Id'] = this.sessionId;
54
+ }
55
+ let response;
56
+ try {
57
+ response = await fetch(url, {
58
+ method: options.method,
59
+ headers,
60
+ body: options.body,
61
+ });
62
+ }
63
+ catch (error) {
64
+ throw new NetworkError(`Network request failed: ${error instanceof Error ? error.message : 'Unknown error'}`, error instanceof Error ? error : undefined);
65
+ }
66
+ // Handle 401 with token refresh
67
+ if (response.status === 401 && this.tokenRefresher) {
68
+ const freshToken = await this.tokenRefresher();
69
+ if (freshToken) {
70
+ // Retry with fresh token as Bearer Authorization header
71
+ headers['Authorization'] = `Bearer ${freshToken}`;
72
+ try {
73
+ response = await fetch(url, {
74
+ method: options.method,
75
+ headers,
76
+ body: options.body,
77
+ });
78
+ }
79
+ catch (error) {
80
+ throw new NetworkError(`Network request failed on retry: ${error instanceof Error ? error.message : 'Unknown error'}`, error instanceof Error ? error : undefined);
81
+ }
82
+ if (response.status === 401) {
83
+ throw new SessionExpiredError();
84
+ }
85
+ }
86
+ else {
87
+ throw new SessionExpiredError();
88
+ }
89
+ }
90
+ // Handle successful responses
91
+ if (response.ok) {
92
+ // 204 No Content
93
+ if (response.status === 204) {
94
+ return undefined;
95
+ }
96
+ try {
97
+ return (await response.json());
98
+ }
99
+ catch {
100
+ throw new P1ApiError('Failed to parse response JSON', response.status);
101
+ }
102
+ }
103
+ // Handle error responses
104
+ let errorData = null;
105
+ try {
106
+ errorData = (await response.json());
107
+ }
108
+ catch {
109
+ // Ignore JSON parse errors for error responses
110
+ }
111
+ const errorMessage = errorData?.error ?? `HTTP ${response.status}`;
112
+ switch (response.status) {
113
+ case 400:
114
+ throw new ValidationError(errorMessage, errorData?.details);
115
+ case 401:
116
+ throw new AuthenticationError(errorMessage);
117
+ case 404:
118
+ throw new NotFoundError(errorMessage);
119
+ case 409:
120
+ throw new ConflictError(errorMessage, errorData?.details);
121
+ default:
122
+ throw new P1ApiError(errorMessage, response.status, undefined, errorData?.details);
123
+ }
124
+ }
125
+ /**
126
+ * Create a new BaseEndpoint with updated principal.
127
+ */
128
+ withPrincipal(principal) {
129
+ return new BaseEndpoint({
130
+ baseUrl: this.baseUrl,
131
+ authProvider: this.authProvider,
132
+ principal,
133
+ sessionId: this.sessionId,
134
+ tokenRefresher: this.tokenRefresher,
135
+ });
136
+ }
137
+ /**
138
+ * Create a new BaseEndpoint with session ID for agent authorization.
139
+ */
140
+ withSessionId(sessionId) {
141
+ return new BaseEndpoint({
142
+ baseUrl: this.baseUrl,
143
+ authProvider: this.authProvider,
144
+ principal: this.principal,
145
+ sessionId,
146
+ tokenRefresher: this.tokenRefresher,
147
+ });
148
+ }
149
+ }
150
+ //# sourceMappingURL=base.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"base.js","sourceRoot":"","sources":["../../src/endpoints/base.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,OAAO,EACL,UAAU,EACV,YAAY,EACZ,mBAAmB,EACnB,aAAa,EACb,aAAa,EACb,eAAe,EACf,mBAAmB,GACpB,MAAM,cAAc,CAAC;AA8BtB,MAAM,OAAO,YAAY;IACN,OAAO,CAAS;IAChB,YAAY,CAAgB;IAC5B,SAAS,CAAa;IACtB,SAAS,CAAU;IACnB,cAAc,CAAgC;IAE/D,YAAY,MAA0B;QACpC,sCAAsC;QACtC,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QACjD,IAAI,CAAC,YAAY,GAAG,MAAM,CAAC,YAAY,CAAC;QACxC,IAAI,CAAC,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC;QAClC,IAAI,CAAC,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC;QAClC,IAAI,CAAC,cAAc,GAAG,MAAM,CAAC,cAAc,CAAC;IAC9C,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,OAAO,CAAI,IAAY,EAAE,OAAuB;QACpD,MAAM,GAAG,GAAG,GAAG,IAAI,CAAC,OAAO,GAAG,IAAI,EAAE,CAAC;QAErC,MAAM,OAAO,GAA2B;YACtC,cAAc,EAAE,kBAAkB;YAClC,GAAG,OAAO,CAAC,OAAO;SACnB,CAAC;QAEF,4BAA4B;QAC5B,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YACtB,IAAI,CAAC;gBACH,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC;gBAC5C,0EAA0E;gBAC1E,IAAI,SAAS,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;oBACpC,OAAO,CAAC,WAAW,CAAC,GAAG,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,0BAA0B;gBAC3E,CAAC;qBAAM,CAAC;oBACN,OAAO,CAAC,eAAe,CAAC,GAAG,SAAS,CAAC;gBACvC,CAAC;YACH,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,IAAI,mBAAmB,CAC3B,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,0BAA0B,CACpE,CAAC;YACJ,CAAC;QACH,CAAC;QAED,qCAAqC;QACrC,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACnB,OAAO,CAAC,gBAAgB,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;YAC9C,OAAO,CAAC,kBAAkB,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;QACpD,CAAC;QAED,gDAAgD;QAChD,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACnB,OAAO,CAAC,oBAAoB,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC;QACjD,CAAC;QAED,IAAI,QAAkB,CAAC;QACvB,IAAI,CAAC;YACH,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;gBAC1B,MAAM,EAAE,OAAO,CAAC,MAAM;gBACtB,OAAO;gBACP,IAAI,EAAE,OAAO,CAAC,IAAI;aACnB,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,YAAY,CACpB,2BAA2B,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,EAAE,EACrF,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAC3C,CAAC;QACJ,CAAC;QAED,gCAAgC;QAChC,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;YACnD,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;YAC/C,IAAI,UAAU,EAAE,CAAC;gBACf,wDAAwD;gBACxD,OAAO,CAAC,eAAe,CAAC,GAAG,UAAU,UAAU,EAAE,CAAC;gBAClD,IAAI,CAAC;oBACH,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;wBAC1B,MAAM,EAAE,OAAO,CAAC,MAAM;wBACtB,OAAO;wBACP,IAAI,EAAE,OAAO,CAAC,IAAI;qBACnB,CAAC,CAAC;gBACL,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,MAAM,IAAI,YAAY,CACpB,oCAAoC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,EAAE,EAC9F,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAC3C,CAAC;gBACJ,CAAC;gBACD,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;oBAC5B,MAAM,IAAI,mBAAmB,EAAE,CAAC;gBAClC,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,MAAM,IAAI,mBAAmB,EAAE,CAAC;YAClC,CAAC;QACH,CAAC;QAED,8BAA8B;QAC9B,IAAI,QAAQ,CAAC,EAAE,EAAE,CAAC;YAChB,iBAAiB;YACjB,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;gBAC5B,OAAO,SAAc,CAAC;YACxB,CAAC;YAED,IAAI,CAAC;gBACH,OAAO,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAM,CAAC;YACtC,CAAC;YAAC,MAAM,CAAC;gBACP,MAAM,IAAI,UAAU,CAAC,+BAA+B,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;YACzE,CAAC;QACH,CAAC;QAED,yBAAyB;QACzB,IAAI,SAAS,GAAyB,IAAI,CAAC;QAC3C,IAAI,CAAC;YACH,SAAS,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAkB,CAAC;QACvD,CAAC;QAAC,MAAM,CAAC;YACP,+CAA+C;QACjD,CAAC;QAED,MAAM,YAAY,GAAG,SAAS,EAAE,KAAK,IAAI,QAAQ,QAAQ,CAAC,MAAM,EAAE,CAAC;QAEnE,QAAQ,QAAQ,CAAC,MAAM,EAAE,CAAC;YACxB,KAAK,GAAG;gBACN,MAAM,IAAI,eAAe,CAAC,YAAY,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;YAC9D,KAAK,GAAG;gBACN,MAAM,IAAI,mBAAmB,CAAC,YAAY,CAAC,CAAC;YAC9C,KAAK,GAAG;gBACN,MAAM,IAAI,aAAa,CAAC,YAAY,CAAC,CAAC;YACxC,KAAK,GAAG;gBACN,MAAM,IAAI,aAAa,CAAC,YAAY,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;YAC5D;gBACE,MAAM,IAAI,UAAU,CAAC,YAAY,EAAE,QAAQ,CAAC,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;QACvF,CAAC;IACH,CAAC;IAED;;OAEG;IACH,aAAa,CAAC,SAAoB;QAChC,OAAO,IAAI,YAAY,CAAC;YACtB,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,YAAY,EAAE,IAAI,CAAC,YAAY;YAC/B,SAAS;YACT,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,cAAc,EAAE,IAAI,CAAC,cAAc;SACpC,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,aAAa,CAAC,SAAiB;QAC7B,OAAO,IAAI,YAAY,CAAC;YACtB,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,YAAY,EAAE,IAAI,CAAC,YAAY;YAC/B,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,SAAS;YACT,cAAc,EAAE,IAAI,CAAC,cAAc;SACpC,CAAC,CAAC;IACL,CAAC;CACF"}
@@ -0,0 +1,32 @@
1
+ /**
2
+ * Branches Endpoint
3
+ *
4
+ * API operations for branches.
5
+ */
6
+ import type { Branch, CreateBranchParams, PaginationOptions } from '../types.js';
7
+ import type { BaseEndpoint } from './base.js';
8
+ export declare class BranchesEndpoint {
9
+ private readonly base;
10
+ constructor(base: BaseEndpoint);
11
+ /**
12
+ * Get a branch by ID.
13
+ */
14
+ get(siteId: string, branchId: string): Promise<Branch>;
15
+ /**
16
+ * List all branches for a site.
17
+ */
18
+ list(siteId: string, options?: PaginationOptions): Promise<Branch[]>;
19
+ /**
20
+ * Create a new branch.
21
+ */
22
+ create(params: CreateBranchParams): Promise<Branch>;
23
+ /**
24
+ * Archive a branch.
25
+ */
26
+ archive(siteId: string, branchId: string): Promise<Branch>;
27
+ /**
28
+ * Delete a branch.
29
+ */
30
+ delete(siteId: string, branchId: string): Promise<void>;
31
+ }
32
+ //# sourceMappingURL=branches.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"branches.d.ts","sourceRoot":"","sources":["../../src/endpoints/branches.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,MAAM,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AACjF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAE9C,qBAAa,gBAAgB;IACf,OAAO,CAAC,QAAQ,CAAC,IAAI;gBAAJ,IAAI,EAAE,YAAY;IAE/C;;OAEG;IACG,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAM5D;;OAEG;IACG,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAqB1E;;OAEG;IACG,MAAM,CAAC,MAAM,EAAE,kBAAkB,GAAG,OAAO,CAAC,MAAM,CAAC;IAUzD;;OAEG;IACG,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAOhE;;OAEG;IACG,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAK9D"}
@@ -0,0 +1,69 @@
1
+ /**
2
+ * Branches Endpoint
3
+ *
4
+ * API operations for branches.
5
+ */
6
+ export class BranchesEndpoint {
7
+ base;
8
+ constructor(base) {
9
+ this.base = base;
10
+ }
11
+ /**
12
+ * Get a branch by ID.
13
+ */
14
+ async get(siteId, branchId) {
15
+ return this.base.request(`/api/sites/${siteId}/branches/${branchId}`, {
16
+ method: 'GET',
17
+ });
18
+ }
19
+ /**
20
+ * List all branches for a site.
21
+ */
22
+ async list(siteId, options) {
23
+ const params = new URLSearchParams();
24
+ if (options?.limit !== undefined) {
25
+ params.set('limit', String(options.limit));
26
+ }
27
+ if (options?.offset !== undefined) {
28
+ params.set('offset', String(options.offset));
29
+ }
30
+ const query = params.toString();
31
+ const path = query
32
+ ? `/api/sites/${siteId}/branches?${query}`
33
+ : `/api/sites/${siteId}/branches`;
34
+ const response = await this.base.request(path, {
35
+ method: 'GET',
36
+ });
37
+ return response.branches;
38
+ }
39
+ /**
40
+ * Create a new branch.
41
+ */
42
+ async create(params) {
43
+ return this.base.request(`/api/sites/${params.siteId}/branches`, {
44
+ method: 'POST',
45
+ body: JSON.stringify({
46
+ name: params.name,
47
+ sourceBranchId: params.sourceBranchId,
48
+ }),
49
+ });
50
+ }
51
+ /**
52
+ * Archive a branch.
53
+ */
54
+ async archive(siteId, branchId) {
55
+ return this.base.request(`/api/sites/${siteId}/branches/${branchId}`, {
56
+ method: 'PATCH',
57
+ body: JSON.stringify({ status: 'archived' }),
58
+ });
59
+ }
60
+ /**
61
+ * Delete a branch.
62
+ */
63
+ async delete(siteId, branchId) {
64
+ await this.base.request(`/api/sites/${siteId}/branches/${branchId}`, {
65
+ method: 'DELETE',
66
+ });
67
+ }
68
+ }
69
+ //# sourceMappingURL=branches.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"branches.js","sourceRoot":"","sources":["../../src/endpoints/branches.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAKH,MAAM,OAAO,gBAAgB;IACE;IAA7B,YAA6B,IAAkB;QAAlB,SAAI,GAAJ,IAAI,CAAc;IAAG,CAAC;IAEnD;;OAEG;IACH,KAAK,CAAC,GAAG,CAAC,MAAc,EAAE,QAAgB;QACxC,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAS,cAAc,MAAM,aAAa,QAAQ,EAAE,EAAE;YAC5E,MAAM,EAAE,KAAK;SACd,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,IAAI,CAAC,MAAc,EAAE,OAA2B;QACpD,MAAM,MAAM,GAAG,IAAI,eAAe,EAAE,CAAC;QACrC,IAAI,OAAO,EAAE,KAAK,KAAK,SAAS,EAAE,CAAC;YACjC,MAAM,CAAC,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;QAC7C,CAAC;QACD,IAAI,OAAO,EAAE,MAAM,KAAK,SAAS,EAAE,CAAC;YAClC,MAAM,CAAC,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;QAC/C,CAAC;QAED,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC;QAChC,MAAM,IAAI,GAAG,KAAK;YAChB,CAAC,CAAC,cAAc,MAAM,aAAa,KAAK,EAAE;YAC1C,CAAC,CAAC,cAAc,MAAM,WAAW,CAAC;QAEpC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,CAAyB,IAAI,EAAE;YACrE,MAAM,EAAE,KAAK;SACd,CAAC,CAAC;QAEH,OAAO,QAAQ,CAAC,QAAQ,CAAC;IAC3B,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,MAAM,CAAC,MAA0B;QACrC,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAS,cAAc,MAAM,CAAC,MAAM,WAAW,EAAE;YACvE,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;gBACnB,IAAI,EAAE,MAAM,CAAC,IAAI;gBACjB,cAAc,EAAE,MAAM,CAAC,cAAc;aACtC,CAAC;SACH,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,OAAO,CAAC,MAAc,EAAE,QAAgB;QAC5C,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAS,cAAc,MAAM,aAAa,QAAQ,EAAE,EAAE;YAC5E,MAAM,EAAE,OAAO;YACf,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC;SAC7C,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,MAAM,CAAC,MAAc,EAAE,QAAgB;QAC3C,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,CAAO,cAAc,MAAM,aAAa,QAAQ,EAAE,EAAE;YACzE,MAAM,EAAE,QAAQ;SACjB,CAAC,CAAC;IACL,CAAC;CACF"}
@@ -0,0 +1,36 @@
1
+ /**
2
+ * Checkpoints Endpoint
3
+ *
4
+ * API operations for checkpoints.
5
+ */
6
+ import type { Checkpoint, CheckpointDocument, CreateCheckpointParams, PaginationOptions } from '../types.js';
7
+ import type { BaseEndpoint } from './base.js';
8
+ export declare class CheckpointsEndpoint {
9
+ private readonly base;
10
+ constructor(base: BaseEndpoint);
11
+ /**
12
+ * Get a checkpoint by ID.
13
+ */
14
+ get(siteId: string, checkpointId: string): Promise<Checkpoint>;
15
+ /**
16
+ * List checkpoints for a branch.
17
+ */
18
+ list(siteId: string, branchId: string, options?: PaginationOptions): Promise<Checkpoint[]>;
19
+ /**
20
+ * Create a new checkpoint.
21
+ */
22
+ create(siteId: string, params: CreateCheckpointParams): Promise<Checkpoint>;
23
+ /**
24
+ * Get documents at a checkpoint.
25
+ */
26
+ getDocuments(siteId: string, checkpointId: string): Promise<CheckpointDocument[]>;
27
+ /**
28
+ * Revert a branch to a checkpoint.
29
+ */
30
+ revert(siteId: string, branchId: string, checkpointId: string, name?: string): Promise<Checkpoint>;
31
+ /**
32
+ * Delete a checkpoint.
33
+ */
34
+ delete(siteId: string, checkpointId: string): Promise<void>;
35
+ }
36
+ //# sourceMappingURL=checkpoints.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"checkpoints.d.ts","sourceRoot":"","sources":["../../src/endpoints/checkpoints.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EACV,UAAU,EACV,kBAAkB,EAClB,sBAAsB,EACtB,iBAAiB,EAClB,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAE9C,qBAAa,mBAAmB;IAClB,OAAO,CAAC,QAAQ,CAAC,IAAI;gBAAJ,IAAI,EAAE,YAAY;IAE/C;;OAEG;IACG,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC;IAMpE;;OAEG;IACG,IAAI,CACR,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,EAChB,OAAO,CAAC,EAAE,iBAAiB,GAC1B,OAAO,CAAC,UAAU,EAAE,CAAC;IAqBxB;;OAEG;IACG,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,sBAAsB,GAAG,OAAO,CAAC,UAAU,CAAC;IAajF;;OAEG;IACG,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,EAAE,CAAC;IASvF;;OAEG;IACG,MAAM,CACV,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,EAChB,YAAY,EAAE,MAAM,EACpB,IAAI,CAAC,EAAE,MAAM,GACZ,OAAO,CAAC,UAAU,CAAC;IAUtB;;OAEG;IACG,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAKlE"}
@@ -0,0 +1,76 @@
1
+ /**
2
+ * Checkpoints Endpoint
3
+ *
4
+ * API operations for checkpoints.
5
+ */
6
+ export class CheckpointsEndpoint {
7
+ base;
8
+ constructor(base) {
9
+ this.base = base;
10
+ }
11
+ /**
12
+ * Get a checkpoint by ID.
13
+ */
14
+ async get(siteId, checkpointId) {
15
+ return this.base.request(`/api/sites/${siteId}/checkpoints/${checkpointId}`, {
16
+ method: 'GET',
17
+ });
18
+ }
19
+ /**
20
+ * List checkpoints for a branch.
21
+ */
22
+ async list(siteId, branchId, options) {
23
+ const params = new URLSearchParams();
24
+ if (options?.limit !== undefined) {
25
+ params.set('limit', String(options.limit));
26
+ }
27
+ if (options?.offset !== undefined) {
28
+ params.set('offset', String(options.offset));
29
+ }
30
+ const query = params.toString();
31
+ const path = query
32
+ ? `/api/sites/${siteId}/branches/${branchId}/checkpoints?${query}`
33
+ : `/api/sites/${siteId}/branches/${branchId}/checkpoints`;
34
+ const response = await this.base.request(path, {
35
+ method: 'GET',
36
+ });
37
+ return response.checkpoints;
38
+ }
39
+ /**
40
+ * Create a new checkpoint.
41
+ */
42
+ async create(siteId, params) {
43
+ return this.base.request(`/api/sites/${siteId}/branches/${params.branchId}/checkpoints`, {
44
+ method: 'POST',
45
+ body: JSON.stringify({
46
+ name: params.name,
47
+ type: params.type ?? 'manual',
48
+ }),
49
+ });
50
+ }
51
+ /**
52
+ * Get documents at a checkpoint.
53
+ */
54
+ async getDocuments(siteId, checkpointId) {
55
+ const response = await this.base.request(`/api/sites/${siteId}/checkpoints/${checkpointId}/documents`, { method: 'GET' });
56
+ return response.documents;
57
+ }
58
+ /**
59
+ * Revert a branch to a checkpoint.
60
+ */
61
+ async revert(siteId, branchId, checkpointId, name) {
62
+ return this.base.request(`/api/sites/${siteId}/branches/${branchId}/checkpoints/${checkpointId}/revert`, {
63
+ method: 'POST',
64
+ body: JSON.stringify({ name }),
65
+ });
66
+ }
67
+ /**
68
+ * Delete a checkpoint.
69
+ */
70
+ async delete(siteId, checkpointId) {
71
+ await this.base.request(`/api/sites/${siteId}/checkpoints/${checkpointId}`, {
72
+ method: 'DELETE',
73
+ });
74
+ }
75
+ }
76
+ //# sourceMappingURL=checkpoints.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"checkpoints.js","sourceRoot":"","sources":["../../src/endpoints/checkpoints.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAUH,MAAM,OAAO,mBAAmB;IACD;IAA7B,YAA6B,IAAkB;QAAlB,SAAI,GAAJ,IAAI,CAAc;IAAG,CAAC;IAEnD;;OAEG;IACH,KAAK,CAAC,GAAG,CAAC,MAAc,EAAE,YAAoB;QAC5C,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAa,cAAc,MAAM,gBAAgB,YAAY,EAAE,EAAE;YACvF,MAAM,EAAE,KAAK;SACd,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,IAAI,CACR,MAAc,EACd,QAAgB,EAChB,OAA2B;QAE3B,MAAM,MAAM,GAAG,IAAI,eAAe,EAAE,CAAC;QACrC,IAAI,OAAO,EAAE,KAAK,KAAK,SAAS,EAAE,CAAC;YACjC,MAAM,CAAC,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;QAC7C,CAAC;QACD,IAAI,OAAO,EAAE,MAAM,KAAK,SAAS,EAAE,CAAC;YAClC,MAAM,CAAC,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;QAC/C,CAAC;QAED,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC;QAChC,MAAM,IAAI,GAAG,KAAK;YAChB,CAAC,CAAC,cAAc,MAAM,aAAa,QAAQ,gBAAgB,KAAK,EAAE;YAClE,CAAC,CAAC,cAAc,MAAM,aAAa,QAAQ,cAAc,CAAC;QAE5D,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,CAAgC,IAAI,EAAE;YAC5E,MAAM,EAAE,KAAK;SACd,CAAC,CAAC;QAEH,OAAO,QAAQ,CAAC,WAAW,CAAC;IAC9B,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,MAAM,CAAC,MAAc,EAAE,MAA8B;QACzD,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CACtB,cAAc,MAAM,aAAa,MAAM,CAAC,QAAQ,cAAc,EAC9D;YACE,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;gBACnB,IAAI,EAAE,MAAM,CAAC,IAAI;gBACjB,IAAI,EAAE,MAAM,CAAC,IAAI,IAAI,QAAQ;aAC9B,CAAC;SACH,CACF,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,YAAY,CAAC,MAAc,EAAE,YAAoB;QACrD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,CACtC,cAAc,MAAM,gBAAgB,YAAY,YAAY,EAC5D,EAAE,MAAM,EAAE,KAAK,EAAE,CAClB,CAAC;QAEF,OAAO,QAAQ,CAAC,SAAS,CAAC;IAC5B,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,MAAM,CACV,MAAc,EACd,QAAgB,EAChB,YAAoB,EACpB,IAAa;QAEb,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CACtB,cAAc,MAAM,aAAa,QAAQ,gBAAgB,YAAY,SAAS,EAC9E;YACE,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,CAAC;SAC/B,CACF,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,MAAM,CAAC,MAAc,EAAE,YAAoB;QAC/C,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,CAAO,cAAc,MAAM,gBAAgB,YAAY,EAAE,EAAE;YAChF,MAAM,EAAE,QAAQ;SACjB,CAAC,CAAC;IACL,CAAC;CACF"}
@@ -0,0 +1,46 @@
1
+ /**
2
+ * Documents Endpoint
3
+ *
4
+ * API operations for documents.
5
+ */
6
+ import type { Document, CreateDocumentParams, ListDocumentsOptions, PublishDocumentResult } from '../types.js';
7
+ import type { BaseEndpoint } from './base.js';
8
+ export declare class DocumentsEndpoint {
9
+ private readonly base;
10
+ constructor(base: BaseEndpoint);
11
+ /**
12
+ * Get a document by ID.
13
+ */
14
+ get(siteId: string, documentId: string): Promise<Document>;
15
+ /**
16
+ * Get a document by path on a specific branch.
17
+ */
18
+ getByPath(siteId: string, path: string): Promise<Document>;
19
+ /**
20
+ * List documents on a branch.
21
+ */
22
+ list(siteId: string, branchId: string, options?: ListDocumentsOptions): Promise<Document[]>;
23
+ /**
24
+ * Create a new document on a branch.
25
+ */
26
+ create(params: CreateDocumentParams): Promise<Document>;
27
+ /**
28
+ * Delete a document from a branch.
29
+ */
30
+ delete(siteId: string, branchId: string, documentId: string): Promise<void>;
31
+ /**
32
+ * Check if a document exists on a branch.
33
+ */
34
+ exists(siteId: string, branchId: string, documentId: string): Promise<boolean>;
35
+ /**
36
+ * Restore an archived document.
37
+ * This unarchives a soft-deleted document, making it active again.
38
+ */
39
+ restore(siteId: string, documentId: string): Promise<Document>;
40
+ /**
41
+ * Publish a single document on a branch.
42
+ * Creates a checkpoint containing only this document's current version.
43
+ */
44
+ publish(siteId: string, branchId: string, documentId: string): Promise<PublishDocumentResult>;
45
+ }
46
+ //# sourceMappingURL=documents.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"documents.d.ts","sourceRoot":"","sources":["../../src/endpoints/documents.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAC/G,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAE9C,qBAAa,iBAAiB;IAChB,OAAO,CAAC,QAAQ,CAAC,IAAI;gBAAJ,IAAI,EAAE,YAAY;IAE/C;;OAEG;IACG,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC;IAMhE;;OAEG;IACG,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC;IAOhE;;OAEG;IACG,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,oBAAoB,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;IAwBjG;;OAEG;IACG,MAAM,CAAC,MAAM,EAAE,oBAAoB,GAAG,OAAO,CAAC,QAAQ,CAAC;IAY7D;;OAEG;IACG,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IASjF;;OAEG;IACG,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAepF;;;OAGG;IACG,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC;IASpE;;;OAGG;IACG,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,qBAAqB,CAAC;CAMpG"}
@@ -0,0 +1,101 @@
1
+ /**
2
+ * Documents Endpoint
3
+ *
4
+ * API operations for documents.
5
+ */
6
+ export class DocumentsEndpoint {
7
+ base;
8
+ constructor(base) {
9
+ this.base = base;
10
+ }
11
+ /**
12
+ * Get a document by ID.
13
+ */
14
+ async get(siteId, documentId) {
15
+ return this.base.request(`/api/sites/${siteId}/documents/${documentId}`, {
16
+ method: 'GET',
17
+ });
18
+ }
19
+ /**
20
+ * Get a document by path on a specific branch.
21
+ */
22
+ async getByPath(siteId, path) {
23
+ const encodedPath = encodeURIComponent(path);
24
+ return this.base.request(`/api/sites/${siteId}/documents/by-path/${encodedPath}`, {
25
+ method: 'GET',
26
+ });
27
+ }
28
+ /**
29
+ * List documents on a branch.
30
+ */
31
+ async list(siteId, branchId, options) {
32
+ const params = new URLSearchParams();
33
+ if (options?.limit !== undefined) {
34
+ params.set('limit', String(options.limit));
35
+ }
36
+ if (options?.offset !== undefined) {
37
+ params.set('offset', String(options.offset));
38
+ }
39
+ if (options?.pathPrefix !== undefined) {
40
+ params.set('pathPrefix', options.pathPrefix);
41
+ }
42
+ const query = params.toString();
43
+ const path = query
44
+ ? `/api/sites/${siteId}/branches/${branchId}/documents?${query}`
45
+ : `/api/sites/${siteId}/branches/${branchId}/documents`;
46
+ const response = await this.base.request(path, {
47
+ method: 'GET',
48
+ });
49
+ return response.documents;
50
+ }
51
+ /**
52
+ * Create a new document on a branch.
53
+ */
54
+ async create(params) {
55
+ const response = await this.base.request(`/api/sites/${params.siteId}/branches/${params.branchId}/documents`, {
56
+ method: 'POST',
57
+ body: JSON.stringify({ path: params.path }),
58
+ });
59
+ return response.document;
60
+ }
61
+ /**
62
+ * Delete a document from a branch.
63
+ */
64
+ async delete(siteId, branchId, documentId) {
65
+ await this.base.request(`/api/sites/${siteId}/branches/${branchId}/documents/${documentId}`, {
66
+ method: 'DELETE',
67
+ });
68
+ }
69
+ /**
70
+ * Check if a document exists on a branch.
71
+ */
72
+ async exists(siteId, branchId, documentId) {
73
+ try {
74
+ await this.base.request(`/api/sites/${siteId}/branches/${branchId}/documents/${documentId}`, { method: 'GET' });
75
+ return true;
76
+ }
77
+ catch (error) {
78
+ if (error instanceof Error && 'status' in error && error.status === 404) {
79
+ return false;
80
+ }
81
+ throw error;
82
+ }
83
+ }
84
+ /**
85
+ * Restore an archived document.
86
+ * This unarchives a soft-deleted document, making it active again.
87
+ */
88
+ async restore(siteId, documentId) {
89
+ return this.base.request(`/api/sites/${siteId}/documents/${documentId}/restore`, {
90
+ method: 'POST',
91
+ });
92
+ }
93
+ /**
94
+ * Publish a single document on a branch.
95
+ * Creates a checkpoint containing only this document's current version.
96
+ */
97
+ async publish(siteId, branchId, documentId) {
98
+ return this.base.request(`/api/sites/${siteId}/branches/${branchId}/documents/${documentId}/publish`, { method: 'POST' });
99
+ }
100
+ }
101
+ //# sourceMappingURL=documents.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"documents.js","sourceRoot":"","sources":["../../src/endpoints/documents.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,15 @@
1
+ /**
2
+ * Endpoints barrel export.
3
+ */
4
+ export { BaseEndpoint } from './base.js';
5
+ export type { BaseEndpointConfig, RequestOptions } from './base.js';
6
+ export { SitesEndpoint } from './sites.js';
7
+ export { BranchesEndpoint } from './branches.js';
8
+ export { DocumentsEndpoint } from './documents.js';
9
+ export { VersionsEndpoint } from './versions.js';
10
+ export { CheckpointsEndpoint } from './checkpoints.js';
11
+ export { PresenceEndpoint } from './presence.js';
12
+ export { AgentRegistryEndpoint } from './agent-registry.js';
13
+ export { AgentEditEndpoint } from './agent-edit.js';
14
+ export { MergeEndpoint } from './merge.js';
15
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/endpoints/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AACzC,YAAY,EAAE,kBAAkB,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AACpE,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAC3C,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACnD,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAGvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAC5D,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAGpD,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC"}
@@ -0,0 +1,16 @@
1
+ /**
2
+ * Endpoints barrel export.
3
+ */
4
+ export { BaseEndpoint } from './base.js';
5
+ export { SitesEndpoint } from './sites.js';
6
+ export { BranchesEndpoint } from './branches.js';
7
+ export { DocumentsEndpoint } from './documents.js';
8
+ export { VersionsEndpoint } from './versions.js';
9
+ export { CheckpointsEndpoint } from './checkpoints.js';
10
+ // Agent Politeness endpoints
11
+ export { PresenceEndpoint } from './presence.js';
12
+ export { AgentRegistryEndpoint } from './agent-registry.js';
13
+ export { AgentEditEndpoint } from './agent-edit.js';
14
+ // Merge endpoints
15
+ export { MergeEndpoint } from './merge.js';
16
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/endpoints/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAEzC,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAC3C,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACnD,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAEvD,6BAA6B;AAC7B,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAC5D,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAEpD,kBAAkB;AAClB,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC"}
@@ -0,0 +1,51 @@
1
+ /**
2
+ * Merge Endpoint
3
+ *
4
+ * API operations for merge checks, previews, execution, and merge requests.
5
+ */
6
+ import type { MergeabilityResult, MergePreview, MergeExecuteParams, MergeExecuteResult, MergeRequest, CreateMergeRequestParams, UpdateMergeRequestParams, ListMergeRequestsOptions, ExecuteMergeRequestOptions } from '../types.js';
7
+ import type { BaseEndpoint } from './base.js';
8
+ export declare class MergeEndpoint {
9
+ private readonly base;
10
+ constructor(base: BaseEndpoint);
11
+ /**
12
+ * Check mergeability between two branches.
13
+ */
14
+ checkMergeability(siteId: string, sourceBranchId: string, targetBranchId: string): Promise<MergeabilityResult>;
15
+ /**
16
+ * Preview a merge between two branches.
17
+ */
18
+ preview(siteId: string, sourceBranchId: string, targetBranchId: string, options?: {
19
+ includeContent?: boolean;
20
+ excludePathPrefixes?: string[];
21
+ }): Promise<MergePreview>;
22
+ /**
23
+ * Execute a merge between two branches.
24
+ */
25
+ execute(siteId: string, params: MergeExecuteParams): Promise<MergeExecuteResult>;
26
+ /**
27
+ * Create a merge request.
28
+ */
29
+ createRequest(siteId: string, params: CreateMergeRequestParams): Promise<MergeRequest>;
30
+ /**
31
+ * Get a merge request by ID.
32
+ */
33
+ getRequest(siteId: string, requestId: string): Promise<MergeRequest>;
34
+ /**
35
+ * List merge requests for a site.
36
+ */
37
+ listRequests(siteId: string, options?: ListMergeRequestsOptions): Promise<MergeRequest[]>;
38
+ /**
39
+ * Update a merge request.
40
+ */
41
+ updateRequest(siteId: string, requestId: string, params: UpdateMergeRequestParams): Promise<MergeRequest>;
42
+ /**
43
+ * Delete a merge request.
44
+ */
45
+ deleteRequest(siteId: string, requestId: string): Promise<void>;
46
+ /**
47
+ * Execute a merge request.
48
+ */
49
+ executeRequest(siteId: string, requestId: string, options?: ExecuteMergeRequestOptions): Promise<MergeExecuteResult>;
50
+ }
51
+ //# sourceMappingURL=merge.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"merge.d.ts","sourceRoot":"","sources":["../../src/endpoints/merge.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EACV,kBAAkB,EAClB,YAAY,EACZ,kBAAkB,EAClB,kBAAkB,EAClB,YAAY,EACZ,wBAAwB,EACxB,wBAAwB,EACxB,wBAAwB,EACxB,0BAA0B,EAC3B,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAE9C,qBAAa,aAAa;IACZ,OAAO,CAAC,QAAQ,CAAC,IAAI;gBAAJ,IAAI,EAAE,YAAY;IAE/C;;OAEG;IACG,iBAAiB,CACrB,MAAM,EAAE,MAAM,EACd,cAAc,EAAE,MAAM,EACtB,cAAc,EAAE,MAAM,GACrB,OAAO,CAAC,kBAAkB,CAAC;IAU9B;;OAEG;IACG,OAAO,CACX,MAAM,EAAE,MAAM,EACd,cAAc,EAAE,MAAM,EACtB,cAAc,EAAE,MAAM,EACtB,OAAO,CAAC,EAAE;QAAE,cAAc,CAAC,EAAE,OAAO,CAAC;QAAC,mBAAmB,CAAC,EAAE,MAAM,EAAE,CAAA;KAAE,GACrE,OAAO,CAAC,YAAY,CAAC;IAexB;;OAEG;IACG,OAAO,CACX,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,kBAAkB,GACzB,OAAO,CAAC,kBAAkB,CAAC;IAU9B;;OAEG;IACG,aAAa,CACjB,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,wBAAwB,GAC/B,OAAO,CAAC,YAAY,CAAC;IAUxB;;OAEG;IACG,UAAU,CACd,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,YAAY,CAAC;IASxB;;OAEG;IACG,YAAY,CAChB,MAAM,EAAE,MAAM,EACd,OAAO,CAAC,EAAE,wBAAwB,GACjC,OAAO,CAAC,YAAY,EAAE,CAAC;IAkB1B;;OAEG;IACG,aAAa,CACjB,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,wBAAwB,GAC/B,OAAO,CAAC,YAAY,CAAC;IAUxB;;OAEG;IACG,aAAa,CACjB,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,IAAI,CAAC;IAShB;;OAEG;IACG,cAAc,CAClB,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,EACjB,OAAO,CAAC,EAAE,0BAA0B,GACnC,OAAO,CAAC,kBAAkB,CAAC;CAS/B"}