@37signals/basecamp 0.13.0 → 0.14.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.
- package/README.md +3 -2
- package/dist/client.d.ts +1 -1
- package/dist/client.js +1 -1
- package/dist/errors.d.ts +1 -1
- package/dist/errors.d.ts.map +1 -1
- package/dist/errors.js +11 -0
- package/dist/errors.js.map +1 -1
- package/dist/generated/metadata.d.ts.map +1 -1
- package/dist/generated/metadata.js +12 -1
- package/dist/generated/metadata.js.map +1 -1
- package/dist/generated/metadata.ts +12 -1
- package/dist/generated/openapi-stripped.json +280 -1
- package/dist/generated/path-mapping.d.ts.map +1 -1
- package/dist/generated/path-mapping.js +1 -0
- package/dist/generated/path-mapping.js.map +1 -1
- package/dist/generated/path-mapping.ts +1 -0
- package/dist/generated/schema.d.ts +209 -2
- package/dist/generated/services/uploads.d.ts +36 -2
- package/dist/generated/services/uploads.d.ts.map +1 -1
- package/dist/generated/services/uploads.js +37 -1
- package/dist/generated/services/uploads.js.map +1 -1
- package/dist/generated/services/uploads.ts +65 -2
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js.map +1 -1
- package/dist/oauth/authorization-document.d.ts +201 -0
- package/dist/oauth/authorization-document.d.ts.map +1 -0
- package/dist/oauth/authorization-document.js +130 -0
- package/dist/oauth/authorization-document.js.map +1 -0
- package/dist/oauth/identity.d.ts +7 -1
- package/dist/oauth/identity.d.ts.map +1 -1
- package/dist/oauth/identity.js +8 -19
- package/dist/oauth/identity.js.map +1 -1
- package/dist/oauth/index.d.ts +1 -0
- package/dist/oauth/index.d.ts.map +1 -1
- package/dist/oauth/index.js +2 -0
- package/dist/oauth/index.js.map +1 -1
- package/dist/services/authorization.d.ts +22 -52
- package/dist/services/authorization.d.ts.map +1 -1
- package/dist/services/authorization.js +14 -32
- package/dist/services/authorization.js.map +1 -1
- package/package.json +2 -2
- package/src/generated/metadata.ts +12 -1
- package/src/generated/openapi-stripped.json +280 -1
- package/src/generated/path-mapping.ts +1 -0
- package/src/generated/schema.d.ts +209 -2
- package/src/generated/services/uploads.ts +65 -2
|
@@ -9,6 +9,8 @@ import { ListResult } from "../../pagination.js";
|
|
|
9
9
|
import type { PaginationOptions } from "../../pagination.js";
|
|
10
10
|
/** Upload entity from the Basecamp API. */
|
|
11
11
|
export type Upload = components["schemas"]["Upload"];
|
|
12
|
+
/** UploadVersion entity from the Basecamp API. */
|
|
13
|
+
export type UploadVersion = components["schemas"]["UploadVersion"];
|
|
12
14
|
/**
|
|
13
15
|
* Request parameters for update.
|
|
14
16
|
*/
|
|
@@ -23,6 +25,25 @@ export interface UpdateUploadRequest {
|
|
|
23
25
|
*/
|
|
24
26
|
export interface ListVersionsUploadOptions extends PaginationOptions {
|
|
25
27
|
}
|
|
28
|
+
/**
|
|
29
|
+
* Request parameters for createVersion.
|
|
30
|
+
*/
|
|
31
|
+
export interface CreateVersionUploadRequest {
|
|
32
|
+
/** Attachable sgid */
|
|
33
|
+
attachableSgid: string;
|
|
34
|
+
/** Omit to keep the uploaded file's own name. Sending "" also keeps it. */
|
|
35
|
+
baseName?: string;
|
|
36
|
+
/** Presence-aware: omit to carry the previous version's description forward,
|
|
37
|
+
send "" to clear it, send a value to set it. */
|
|
38
|
+
description?: string;
|
|
39
|
+
/** Who to notify: "default", "everyone", or "custom" (the people in subscriptions).
|
|
40
|
+
|
|
41
|
+
Omit both this and subscriptions to notify nobody. A subscriptions array sent
|
|
42
|
+
without notify is read as "custom". */
|
|
43
|
+
notify?: string;
|
|
44
|
+
/** People to notify about the replacement and subscribe to the upload. */
|
|
45
|
+
subscriptions?: number[];
|
|
46
|
+
}
|
|
26
47
|
/**
|
|
27
48
|
* Options for list.
|
|
28
49
|
*/
|
|
@@ -78,14 +99,27 @@ export declare class UploadsService extends BaseService {
|
|
|
78
99
|
* List versions of an upload
|
|
79
100
|
* @param uploadId - The upload ID
|
|
80
101
|
* @param options - Optional query parameters
|
|
81
|
-
* @returns All
|
|
102
|
+
* @returns All UploadVersion across all pages, with .meta.totalCount
|
|
82
103
|
*
|
|
83
104
|
* @example
|
|
84
105
|
* ```ts
|
|
85
106
|
* const result = await client.uploads.listVersions(123);
|
|
86
107
|
* ```
|
|
87
108
|
*/
|
|
88
|
-
listVersions(uploadId: number, options?: ListVersionsUploadOptions): Promise<ListResult<
|
|
109
|
+
listVersions(uploadId: number, options?: ListVersionsUploadOptions): Promise<ListResult<UploadVersion>>;
|
|
110
|
+
/**
|
|
111
|
+
* Replace an upload's file with a new version
|
|
112
|
+
* @param uploadId - The upload ID
|
|
113
|
+
* @param req - Upload_version creation parameters
|
|
114
|
+
* @returns The Upload
|
|
115
|
+
* @throws {BasecampError} If required fields are missing or invalid
|
|
116
|
+
*
|
|
117
|
+
* @example
|
|
118
|
+
* ```ts
|
|
119
|
+
* const result = await client.uploads.createVersion(123, { attachableSgid: "example" });
|
|
120
|
+
* ```
|
|
121
|
+
*/
|
|
122
|
+
createVersion(uploadId: number, req: CreateVersionUploadRequest): Promise<Upload>;
|
|
89
123
|
/**
|
|
90
124
|
* List uploads in a vault
|
|
91
125
|
* @param vaultId - The vault ID
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"uploads.d.ts","sourceRoot":"","sources":["../../../src/generated/services/uploads.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC/C,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAO7D,2CAA2C;AAC3C,MAAM,MAAM,MAAM,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"uploads.d.ts","sourceRoot":"","sources":["../../../src/generated/services/uploads.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC/C,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAO7D,2CAA2C;AAC3C,MAAM,MAAM,MAAM,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,CAAC;AACrD,kDAAkD;AAClD,MAAM,MAAM,aAAa,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC,eAAe,CAAC,CAAC;AAEnE;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,mCAAmC;IACnC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,gBAAgB;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,yBAA0B,SAAQ,iBAAiB;CACnE;AAED;;GAEG;AACH,MAAM,WAAW,0BAA0B;IACzC,sBAAsB;IACtB,cAAc,EAAE,MAAM,CAAC;IACvB,2EAA2E;IAC3E,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;iDAC6C;IAC7C,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;;wCAGoC;IACpC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,0EAA0E;IAC1E,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;CAC1B;AAED;;GAEG;AACH,MAAM,WAAW,iBAAkB,SAAQ,iBAAiB;IAC1D,wJAAwJ;IACxJ,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,sBAAsB;IACtB,cAAc,EAAE,MAAM,CAAC;IACvB,mCAAmC;IACnC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,gBAAgB;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,oBAAoB;IACpB,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB,yBAAyB;IACzB,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC5B;AAOD;;GAEG;AACH,qBAAa,cAAe,SAAQ,WAAW;IAE7C;;;;;;;;;;OAUG;IACG,GAAG,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAmB5C;;;;;;;;;;;OAWG;IACG,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE,mBAAmB,GAAG,OAAO,CAAC,MAAM,CAAC;IAuBzE;;;;;;;;;;OAUG;IACG,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,yBAAyB,GAAG,OAAO,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;IAmB7G;;;;;;;;;;;OAWG;IACG,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE,0BAA0B,GAAG,OAAO,CAAC,MAAM,CAAC;IA6BvF;;;;;;;;;;;;;OAaG;IACG,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;IAoBrF;;;;;;;;;;;OAWG;IACG,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,mBAAmB,GAAG,OAAO,CAAC,MAAM,CAAC;CA4BzE"}
|
|
@@ -71,7 +71,7 @@ export class UploadsService extends BaseService {
|
|
|
71
71
|
* List versions of an upload
|
|
72
72
|
* @param uploadId - The upload ID
|
|
73
73
|
* @param options - Optional query parameters
|
|
74
|
-
* @returns All
|
|
74
|
+
* @returns All UploadVersion across all pages, with .meta.totalCount
|
|
75
75
|
*
|
|
76
76
|
* @example
|
|
77
77
|
* ```ts
|
|
@@ -91,6 +91,42 @@ export class UploadsService extends BaseService {
|
|
|
91
91
|
},
|
|
92
92
|
}), options);
|
|
93
93
|
}
|
|
94
|
+
/**
|
|
95
|
+
* Replace an upload's file with a new version
|
|
96
|
+
* @param uploadId - The upload ID
|
|
97
|
+
* @param req - Upload_version creation parameters
|
|
98
|
+
* @returns The Upload
|
|
99
|
+
* @throws {BasecampError} If required fields are missing or invalid
|
|
100
|
+
*
|
|
101
|
+
* @example
|
|
102
|
+
* ```ts
|
|
103
|
+
* const result = await client.uploads.createVersion(123, { attachableSgid: "example" });
|
|
104
|
+
* ```
|
|
105
|
+
*/
|
|
106
|
+
async createVersion(uploadId, req) {
|
|
107
|
+
if (!req.attachableSgid) {
|
|
108
|
+
throw Errors.validation("Attachable sgid is required");
|
|
109
|
+
}
|
|
110
|
+
const response = await this.request({
|
|
111
|
+
service: "Uploads",
|
|
112
|
+
operation: "CreateUploadVersion",
|
|
113
|
+
resourceType: "upload_version",
|
|
114
|
+
isMutation: true,
|
|
115
|
+
resourceId: uploadId,
|
|
116
|
+
}, () => this.client.POST("/uploads/{uploadId}/versions.json", {
|
|
117
|
+
params: {
|
|
118
|
+
path: { uploadId },
|
|
119
|
+
},
|
|
120
|
+
body: {
|
|
121
|
+
attachable_sgid: req.attachableSgid,
|
|
122
|
+
base_name: req.baseName,
|
|
123
|
+
description: req.description,
|
|
124
|
+
notify: req.notify,
|
|
125
|
+
subscriptions: req.subscriptions,
|
|
126
|
+
},
|
|
127
|
+
}));
|
|
128
|
+
return response;
|
|
129
|
+
}
|
|
94
130
|
/**
|
|
95
131
|
* List uploads in a vault
|
|
96
132
|
* @param vaultId - The vault ID
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"uploads.js","sourceRoot":"","sources":["../../../src/generated/services/uploads.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAIrD,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"uploads.js","sourceRoot":"","sources":["../../../src/generated/services/uploads.ts"],"names":[],"mappings":"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"}
|
|
@@ -16,6 +16,8 @@ import { Errors } from "../../errors.js";
|
|
|
16
16
|
|
|
17
17
|
/** Upload entity from the Basecamp API. */
|
|
18
18
|
export type Upload = components["schemas"]["Upload"];
|
|
19
|
+
/** UploadVersion entity from the Basecamp API. */
|
|
20
|
+
export type UploadVersion = components["schemas"]["UploadVersion"];
|
|
19
21
|
|
|
20
22
|
/**
|
|
21
23
|
* Request parameters for update.
|
|
@@ -33,6 +35,26 @@ export interface UpdateUploadRequest {
|
|
|
33
35
|
export interface ListVersionsUploadOptions extends PaginationOptions {
|
|
34
36
|
}
|
|
35
37
|
|
|
38
|
+
/**
|
|
39
|
+
* Request parameters for createVersion.
|
|
40
|
+
*/
|
|
41
|
+
export interface CreateVersionUploadRequest {
|
|
42
|
+
/** Attachable sgid */
|
|
43
|
+
attachableSgid: string;
|
|
44
|
+
/** Omit to keep the uploaded file's own name. Sending "" also keeps it. */
|
|
45
|
+
baseName?: string;
|
|
46
|
+
/** Presence-aware: omit to carry the previous version's description forward,
|
|
47
|
+
send "" to clear it, send a value to set it. */
|
|
48
|
+
description?: string;
|
|
49
|
+
/** Who to notify: "default", "everyone", or "custom" (the people in subscriptions).
|
|
50
|
+
|
|
51
|
+
Omit both this and subscriptions to notify nobody. A subscriptions array sent
|
|
52
|
+
without notify is read as "custom". */
|
|
53
|
+
notify?: string;
|
|
54
|
+
/** People to notify about the replacement and subscribe to the upload. */
|
|
55
|
+
subscriptions?: number[];
|
|
56
|
+
}
|
|
57
|
+
|
|
36
58
|
/**
|
|
37
59
|
* Options for list.
|
|
38
60
|
*/
|
|
@@ -136,14 +158,14 @@ export class UploadsService extends BaseService {
|
|
|
136
158
|
* List versions of an upload
|
|
137
159
|
* @param uploadId - The upload ID
|
|
138
160
|
* @param options - Optional query parameters
|
|
139
|
-
* @returns All
|
|
161
|
+
* @returns All UploadVersion across all pages, with .meta.totalCount
|
|
140
162
|
*
|
|
141
163
|
* @example
|
|
142
164
|
* ```ts
|
|
143
165
|
* const result = await client.uploads.listVersions(123);
|
|
144
166
|
* ```
|
|
145
167
|
*/
|
|
146
|
-
async listVersions(uploadId: number, options?: ListVersionsUploadOptions): Promise<ListResult<
|
|
168
|
+
async listVersions(uploadId: number, options?: ListVersionsUploadOptions): Promise<ListResult<UploadVersion>> {
|
|
147
169
|
return this.requestPaginated(
|
|
148
170
|
{
|
|
149
171
|
service: "Uploads",
|
|
@@ -162,6 +184,47 @@ export class UploadsService extends BaseService {
|
|
|
162
184
|
);
|
|
163
185
|
}
|
|
164
186
|
|
|
187
|
+
/**
|
|
188
|
+
* Replace an upload's file with a new version
|
|
189
|
+
* @param uploadId - The upload ID
|
|
190
|
+
* @param req - Upload_version creation parameters
|
|
191
|
+
* @returns The Upload
|
|
192
|
+
* @throws {BasecampError} If required fields are missing or invalid
|
|
193
|
+
*
|
|
194
|
+
* @example
|
|
195
|
+
* ```ts
|
|
196
|
+
* const result = await client.uploads.createVersion(123, { attachableSgid: "example" });
|
|
197
|
+
* ```
|
|
198
|
+
*/
|
|
199
|
+
async createVersion(uploadId: number, req: CreateVersionUploadRequest): Promise<Upload> {
|
|
200
|
+
if (!req.attachableSgid) {
|
|
201
|
+
throw Errors.validation("Attachable sgid is required");
|
|
202
|
+
}
|
|
203
|
+
const response = await this.request(
|
|
204
|
+
{
|
|
205
|
+
service: "Uploads",
|
|
206
|
+
operation: "CreateUploadVersion",
|
|
207
|
+
resourceType: "upload_version",
|
|
208
|
+
isMutation: true,
|
|
209
|
+
resourceId: uploadId,
|
|
210
|
+
},
|
|
211
|
+
() =>
|
|
212
|
+
this.client.POST("/uploads/{uploadId}/versions.json", {
|
|
213
|
+
params: {
|
|
214
|
+
path: { uploadId },
|
|
215
|
+
},
|
|
216
|
+
body: {
|
|
217
|
+
attachable_sgid: req.attachableSgid,
|
|
218
|
+
base_name: req.baseName,
|
|
219
|
+
description: req.description,
|
|
220
|
+
notify: req.notify,
|
|
221
|
+
subscriptions: req.subscriptions,
|
|
222
|
+
},
|
|
223
|
+
})
|
|
224
|
+
);
|
|
225
|
+
return response;
|
|
226
|
+
}
|
|
227
|
+
|
|
165
228
|
/**
|
|
166
229
|
* List uploads in a vault
|
|
167
230
|
* @param vaultId - The vault ID
|
package/dist/index.d.ts
CHANGED
|
@@ -83,7 +83,7 @@ export { type Document, type CreateDocumentRequest, type ReplaceDocumentRequest,
|
|
|
83
83
|
export { CloudFilesService, type CloudFile, type CreateCloudFileCloudFileRequest, type UpdateCloudFileCloudFileRequest, } from "./generated/services/cloud-files.js";
|
|
84
84
|
export { GoogleDocumentsService, type GoogleDocument, type CreateGoogleDocumentGoogleDocumentRequest, type UpdateGoogleDocumentGoogleDocumentRequest, } from "./generated/services/google-documents.js";
|
|
85
85
|
export { UploadsService } from "./services/uploads-extensions.js";
|
|
86
|
-
export { type Upload, type CreateUploadRequest, type UpdateUploadRequest, } from "./generated/services/uploads.js";
|
|
86
|
+
export { type Upload, type UploadVersion, type CreateUploadRequest, type UpdateUploadRequest, type CreateVersionUploadRequest, } from "./generated/services/uploads.js";
|
|
87
87
|
export { SchedulesService, type UpdateScheduleEntryRequest, type ScheduleEntryFields, } from "./services/schedules-extensions.js";
|
|
88
88
|
export { type Schedule, type ScheduleEntry, type CreateEntryScheduleRequest, type ReplaceEntryScheduleRequest, type UpdateSettingsScheduleRequest, type ListEntriesScheduleOptions, } from "./generated/services/schedules.js";
|
|
89
89
|
export { TimesheetsService, type TimesheetEntry, type ForRecordingTimesheetOptions, type ForProjectTimesheetOptions, type ReportTimesheetOptions, } from "./generated/services/timesheets.js";
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AAEH,sBAAsB;AACtB,OAAO,EACL,oBAAoB,EACpB,OAAO,EACP,WAAW,GAKZ,MAAM,aAAa,CAAC;AAErB,4BAA4B;AAC5B,OAAO,EAAqB,UAAU,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAE/E,qBAAqB;AACrB,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAEzD,iCAAiC;AACjC,OAAO,EAAE,UAAU,EAAE,eAAe,EAAyC,MAAM,iBAAiB,CAAC;AACrG,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAEhF,WAAW;AACX,OAAO,EAAuB,eAAe,EAAE,MAAM,eAAe,CAAC;AAErE,SAAS;AACT,OAAO,EACL,aAAa,EACb,MAAM,EACN,mBAAmB,EACnB,iBAAiB,EACjB,eAAe,EACf,WAAW,GAGZ,MAAM,aAAa,CAAC;AAErB,QAAQ;AACR,OAAO,EACL,UAAU,EACV,YAAY,EACZ,SAAS,EACT,UAAU,GAOX,MAAM,YAAY,CAAC;AAEpB,gFAAgF;AAChF,uDAAuD;AACvD,gFAAgF;AAEhF,6DAA6D;AAC7D,OAAO,EAAE,WAAW,EAAsB,MAAM,oBAAoB,CAAC;AAErE,yEAAyE;AACzE,OAAO,EACL,oBAAoB,GAKrB,MAAM,6BAA6B,CAAC;AAErC,4BAA4B;AAC5B,OAAO,EACL,eAAe,GAKhB,MAAM,kCAAkC,CAAC;AAE1C,OAAO,EACL,YAAY,GAGb,MAAM,gCAAgC,CAAC;AAUxC,OAAO,EACL,gBAAgB,GAGjB,MAAM,oCAAoC,CAAC;AAS5C,OAAO,EACL,eAAe,GAEhB,MAAM,kCAAkC,CAAC;AAE1C,OAAO,EACL,iBAAiB,GAElB,MAAM,qCAAqC,CAAC;AAE7C,OAAO,EACL,aAAa,GAGd,MAAM,gCAAgC,CAAC;AAExC,qCAAqC;AACrC,OAAO,EACL,eAAe,GAIhB,MAAM,kCAAkC,CAAC;AAE1C,OAAO,EACL,eAAe,GAIhB,MAAM,kCAAkC,CAAC;AAE1C,OAAO,EACL,gBAAgB,GAOjB,MAAM,mCAAmC,CAAC;AAE3C,4CAA4C;AAC5C,OAAO,EACL,iBAAiB,GAElB,MAAM,qCAAqC,CAAC;AAS7C,+EAA+E;AAC/E,+EAA+E;AAC/E,iEAAiE;AACjE,8DAA8D;AAC9D,OAAO,EACL,YAAY,GAEb,MAAM,gCAAgC,CAAC;AAExC,OAAO,EACL,kBAAkB,GAMnB,MAAM,sCAAsC,CAAC;AAE9C,OAAO,EACL,gBAAgB,GAIjB,MAAM,oCAAoC,CAAC;AAE5C,OAAO,EACL,gBAAgB,GAIjB,MAAM,mCAAmC,CAAC;AAE3C,+BAA+B;AAC/B,OAAO,EACL,oBAAoB,GAErB,MAAM,wCAAwC,CAAC;AAEhD,OAAO,EACL,mBAAmB,GAIpB,MAAM,uCAAuC,CAAC;AAE/C,+BAA+B;AAC/B,OAAO,EACL,eAAe,GAIhB,MAAM,kCAAkC,CAAC;AAE1C,+BAA+B;AAC/B,OAAO,EACL,eAAe,GAShB,MAAM,kCAAkC,CAAC;AAE1C,qCAAqC;AACrC,OAAO,EACL,sBAAsB,GAEvB,MAAM,0CAA0C,CAAC;AAElD,OAAO,EACL,4BAA4B,GAE7B,MAAM,gDAAgD,CAAC;AAExD,OAAO,EACL,oBAAoB,GAErB,MAAM,wCAAwC,CAAC;AAEhD,OAAO,EACL,uBAAuB,GACxB,MAAM,2CAA2C,CAAC;AAEnD,kCAAkC;AAClC,OAAO,EACL,eAAe,GAIhB,MAAM,kCAAkC,CAAC;AAE1C,wEAAwE;AACxE,OAAO,EACL,eAAe,EACf,wBAAwB,GAKzB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,sBAAsB,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAClF,OAAO,EACL,cAAc,EACd,gBAAgB,GAMjB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,iBAAiB,EAA2B,MAAM,kCAAkC,CAAC;AAE9F,OAAO,EACL,gBAAgB,GAIjB,MAAM,mCAAmC,CAAC;AAE3C,OAAO,EACL,cAAc,GAKf,MAAM,iCAAiC,CAAC;AAEzC,OAAO,EACL,aAAa,GAGd,MAAM,gCAAgC,CAAC;AAExC,OAAO,EACL,gBAAgB,GAGjB,MAAM,mCAAmC,CAAC;AAE3C,OAAO,EACL,cAAc,GAGf,MAAM,kCAAkC,CAAC;AAE1C,OAAO,EACL,oBAAoB,GAGrB,MAAM,uCAAuC,CAAC;AAE/C,OAAO,EACL,aAAa,GAEd,MAAM,gCAAgC,CAAC;AAExC,4BAA4B;AAC5B,OAAO,EACL,kBAAkB,GACnB,MAAM,qCAAqC,CAAC;AAE7C,OAAO,EACL,aAAa,GAId,MAAM,gCAAgC,CAAC;AAExC,OAAO,EACL,gBAAgB,GAGjB,MAAM,oCAAoC,CAAC;AAO5C,OAAO,EACL,iBAAiB,GAIlB,MAAM,qCAAqC,CAAC;AAE7C,OAAO,EACL,sBAAsB,GAIvB,MAAM,0CAA0C,CAAC;AAElD,OAAO,EAAE,cAAc,EAAE,MAAM,kCAAkC,CAAC;AASlE,2BAA2B;AAC3B,OAAO,EACL,gBAAgB,GAGjB,MAAM,oCAAoC,CAAC;AAU5C,OAAO,EACL,iBAAiB,GAKlB,MAAM,oCAAoC,CAAC;AAE5C,+EAA+E;AAC/E,+EAA+E;AAC/E,iDAAiD;AACjD,OAAO,EACL,eAAe,GAEhB,MAAM,kCAAkC,CAAC;AAE1C,4CAA4C;AAC5C,OAAO,EACL,iBAAiB,GAkBlB,MAAM,oCAAoC,CAAC;AAE5C,wCAAwC;AACxC,OAAO,EACL,aAAa,GAEd,MAAM,gCAAgC,CAAC;AAExC,OAAO,EACL,cAAc,GAEf,MAAM,iCAAiC,CAAC;AAEzC,iCAAiC;AACjC,OAAO,EACL,iBAAiB,GAGlB,MAAM,oCAAoC,CAAC;AAE5C,gCAAgC;AAChC,OAAO,EACL,gBAAgB,GAMjB,MAAM,mCAAmC,CAAC;AAE3C,6BAA6B;AAC7B,OAAO,EACL,aAAa,GAGd,MAAM,gCAAgC,CAAC;AAExC,iCAAiC;AACjC,OAAO,EACL,iBAAiB,GAElB,MAAM,oCAAoC,CAAC;AAE5C,oCAAoC;AACpC,EAAE;AACF,+EAA+E;AAC/E,+EAA+E;AAC/E,8DAA8D;AAC9D,OAAO,EACL,qBAAqB,GAEtB,MAAM,yCAAyC,CAAC;AAEjD,OAAO,EACL,YAAY,GAEb,MAAM,+BAA+B,CAAC;AAEvC,6BAA6B;AAC7B,OAAO,EACL,aAAa,GAMd,MAAM,gCAAgC,CAAC;AAExC,8BAA8B;AAC9B,OAAO,EACL,cAAc,GACf,MAAM,iCAAiC,CAAC;AAEzC,6BAA6B;AAC7B,OAAO,EACL,aAAa,GACd,MAAM,gCAAgC,CAAC;AAExC,qCAAqC;AACrC,OAAO,EACL,oBAAoB,GACrB,MAAM,wCAAwC,CAAC;AAEhD,uCAAuC;AACvC,OAAO,EACL,sBAAsB,GAEvB,MAAM,0CAA0C,CAAC;AAElD,sBAAsB;AACtB,OAAO,EACL,SAAS,GAEV,MAAM,iBAAiB,CAAC;AAqBzB,kEAAkE;AAClE,OAAO,EACL,QAAQ,EACR,yBAAyB,EACzB,oBAAoB,EACpB,iBAAiB,EACjB,iBAAiB,EACjB,uBAAuB,EACvB,kBAAkB,GAGnB,MAAM,sBAAsB,CAAC;AAE9B,wCAAwC;AACxC,OAAO,EACL,0BAA0B,EAC1B,eAAe,EACf,sBAAsB,GAIvB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,kBAAkB,GAEnB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACL,eAAe,GAEhB,MAAM,0BAA0B,CAAC;AAElC,2DAA2D;AAC3D,OAAO,EACL,uBAAuB,GAExB,MAAM,8BAA8B,CAAC;AAEtC,OAAO,EACL,YAAY,EACZ,YAAY,EACZ,cAAc,GAEf,MAAM,qBAAqB,CAAC;AAE7B,iBAAiB;AACjB,OAAO,EACL,YAAY,EACZ,aAAa,GAEd,MAAM,iBAAiB,CAAC;AAEzB,gFAAgF;AAChF,qBAAqB;AACrB,gFAAgF;AAEhF,OAAO,EACL,aAAa,EACb,mBAAmB,GACpB,MAAM,eAAe,CAAC"}
|
|
@@ -0,0 +1,201 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The authorization document, as served by both issuers.
|
|
3
|
+
*
|
|
4
|
+
* Two different services fetch this document — {@link ../services/authorization.js | AuthorizationService}
|
|
5
|
+
* and {@link ./identity.js | discoverIdentity} — and they used to carry a copy of
|
|
6
|
+
* the mapping each. The copies had already drifted apart (`app_href` was required
|
|
7
|
+
* in one and optional in the other), which is exactly how a shape fix gets applied
|
|
8
|
+
* to one caller and missed on the other. The mapping lives here once.
|
|
9
|
+
*
|
|
10
|
+
* This module is a leaf on purpose: it imports nothing from the SDK, so either
|
|
11
|
+
* caller can take a *value* dependency on it without adding a runtime edge to the
|
|
12
|
+
* `base.ts` / `client.ts` cycle.
|
|
13
|
+
*
|
|
14
|
+
* ## Two issuers, two shapes
|
|
15
|
+
*
|
|
16
|
+
* Launchpad and a BC5 (bc3) issuer both serve `GET /authorization.json`, and the
|
|
17
|
+
* documents are not the same shape. bc3 renders its own from
|
|
18
|
+
* `app/views/api/authorizations/show.json.jbuilder`:
|
|
19
|
+
*
|
|
20
|
+
* | Field | Launchpad | BC5 |
|
|
21
|
+
* |---|---|---|
|
|
22
|
+
* | `identity.first_name` / `last_name` / `email_address` | present | absent |
|
|
23
|
+
* | `accounts[].product` / `app_href` | present | absent |
|
|
24
|
+
* | `accounts[].resource` | absent | present (RFC 8707 indicator) |
|
|
25
|
+
* | `scope` | absent | present, BC3-issued tokens only |
|
|
26
|
+
* | `expires_at` | ISO-8601 string | integer epoch **seconds** |
|
|
27
|
+
*
|
|
28
|
+
* Every field either issuer omits is typed optional here. The union is modelled
|
|
29
|
+
* rather than either shape alone, because a consumer reaches a BC5 issuer just by
|
|
30
|
+
* passing `endpoint:`, and BC5 issuers serving their own document is the intended
|
|
31
|
+
* end state.
|
|
32
|
+
*
|
|
33
|
+
* @see spec/api-gaps/bc5-authorization-document-shape.md
|
|
34
|
+
*/
|
|
35
|
+
/**
|
|
36
|
+
* The authenticated user's identity.
|
|
37
|
+
*
|
|
38
|
+
* Only `id` is guaranteed. A BC5 issuer emits nothing but the identity id — it
|
|
39
|
+
* deliberately drops the PII that the API docs already say not to use for
|
|
40
|
+
* identifying users — so the name and email fields are absent there.
|
|
41
|
+
*/
|
|
42
|
+
export interface Identity {
|
|
43
|
+
/** User's unique identifier. Emitted by both issuers. */
|
|
44
|
+
id: number;
|
|
45
|
+
/** User's first name. Launchpad only — `undefined` from a BC5 issuer. */
|
|
46
|
+
firstName?: string;
|
|
47
|
+
/** User's last name. Launchpad only — `undefined` from a BC5 issuer. */
|
|
48
|
+
lastName?: string;
|
|
49
|
+
/** User's email address. Launchpad only — `undefined` from a BC5 issuer. */
|
|
50
|
+
emailAddress?: string;
|
|
51
|
+
}
|
|
52
|
+
/**
|
|
53
|
+
* A Basecamp account the user has access to.
|
|
54
|
+
*/
|
|
55
|
+
export interface AuthorizedAccount {
|
|
56
|
+
/** Account's unique identifier. */
|
|
57
|
+
id: number;
|
|
58
|
+
/** Account name. */
|
|
59
|
+
name: string;
|
|
60
|
+
/**
|
|
61
|
+
* Product type (e.g. `"bc3"` for Basecamp, `"hey"` for HEY).
|
|
62
|
+
*
|
|
63
|
+
* Launchpad only. A BC5 issuer serves one product by construction and omits
|
|
64
|
+
* this, which is why {@link filterAccountsByProduct} treats a non-empty
|
|
65
|
+
* document with no `product` anywhere as one the filter cannot apply to.
|
|
66
|
+
*/
|
|
67
|
+
product?: string;
|
|
68
|
+
/** API URL for this account. Emitted by both issuers. */
|
|
69
|
+
href: string;
|
|
70
|
+
/** Web app URL for this account. Launchpad only. */
|
|
71
|
+
appHref?: string;
|
|
72
|
+
/**
|
|
73
|
+
* RFC 8707 resource indicator for this account (`urn:bc:account:<id>`).
|
|
74
|
+
*
|
|
75
|
+
* BC5 issuers only. Pass it as the `resource` parameter when requesting a
|
|
76
|
+
* token scoped to this account.
|
|
77
|
+
*/
|
|
78
|
+
resource?: string;
|
|
79
|
+
/** Whether the account is hidden from the user's view. */
|
|
80
|
+
hidden?: boolean;
|
|
81
|
+
/** Whether the account subscription has expired. */
|
|
82
|
+
expired?: boolean;
|
|
83
|
+
/** Whether this is the user's featured/primary account. */
|
|
84
|
+
featured?: boolean;
|
|
85
|
+
}
|
|
86
|
+
/**
|
|
87
|
+
* Authorization information response.
|
|
88
|
+
*/
|
|
89
|
+
export interface AuthorizationInfo {
|
|
90
|
+
/**
|
|
91
|
+
* Token expiration timestamp.
|
|
92
|
+
*
|
|
93
|
+
* Parsed from either issuer's spelling — see {@link parseExpiresAt}.
|
|
94
|
+
*/
|
|
95
|
+
expiresAt: Date;
|
|
96
|
+
/** The authenticated user's identity. */
|
|
97
|
+
identity: Identity;
|
|
98
|
+
/** List of accounts the user can access. */
|
|
99
|
+
accounts: AuthorizedAccount[];
|
|
100
|
+
/**
|
|
101
|
+
* The token's granted scope.
|
|
102
|
+
*
|
|
103
|
+
* BC5 issuers only, and only for BC3-issued tokens — legacy Signal tokens
|
|
104
|
+
* predate scopes, so its absence is not an error.
|
|
105
|
+
*/
|
|
106
|
+
scope?: string;
|
|
107
|
+
/**
|
|
108
|
+
* Whether a requested `product` filter was actually applied.
|
|
109
|
+
*
|
|
110
|
+
* Only meaningful when a product filter was requested. `false` means the
|
|
111
|
+
* document carried at least one account and no `product` on any of them — a
|
|
112
|
+
* BC5 document — so the filter was inapplicable and `accounts` is unfiltered
|
|
113
|
+
* rather than empty. An empty account list reports `true`: it is no evidence
|
|
114
|
+
* about the issuer either way. See {@link filterAccountsByProduct}.
|
|
115
|
+
*/
|
|
116
|
+
productFilterApplied?: boolean;
|
|
117
|
+
}
|
|
118
|
+
/**
|
|
119
|
+
* The raw wire document, covering both issuers.
|
|
120
|
+
*
|
|
121
|
+
* Every field that *either* issuer omits is optional, so this type describes what
|
|
122
|
+
* can actually arrive rather than what one issuer happens to send. `identity` and
|
|
123
|
+
* `accounts` are the two that stay required: both issuers emit both, so a document
|
|
124
|
+
* missing either is malformed, and throwing on it beats inventing an empty account
|
|
125
|
+
* list that a caller cannot distinguish from a real one.
|
|
126
|
+
*/
|
|
127
|
+
export interface RawAuthorizationDocument {
|
|
128
|
+
/** ISO-8601 string (Launchpad) or integer epoch seconds (BC5). */
|
|
129
|
+
expires_at?: string | number | null;
|
|
130
|
+
/** Both issuers always emit this, so it stays required — see the note below. */
|
|
131
|
+
identity: {
|
|
132
|
+
id: number;
|
|
133
|
+
first_name?: string;
|
|
134
|
+
last_name?: string;
|
|
135
|
+
email_address?: string;
|
|
136
|
+
};
|
|
137
|
+
/** Both issuers always emit this, so it stays required — see the note below. */
|
|
138
|
+
accounts: Array<{
|
|
139
|
+
id: number;
|
|
140
|
+
name: string;
|
|
141
|
+
product?: string;
|
|
142
|
+
href: string;
|
|
143
|
+
app_href?: string;
|
|
144
|
+
resource?: string;
|
|
145
|
+
hidden?: boolean;
|
|
146
|
+
expired?: boolean;
|
|
147
|
+
featured?: boolean;
|
|
148
|
+
}>;
|
|
149
|
+
scope?: string;
|
|
150
|
+
}
|
|
151
|
+
/**
|
|
152
|
+
* Parses `expires_at` from either issuer's spelling.
|
|
153
|
+
*
|
|
154
|
+
* Launchpad sends an ISO-8601 string; bc3 sends `@token.expires_at.to_i`, an
|
|
155
|
+
* integer epoch **seconds**. The distinction is the whole point of branching on
|
|
156
|
+
* `typeof`: `new Date(2085213356)` treats the number as *milliseconds* and yields
|
|
157
|
+
* a date in 1970 — a wrong answer rather than an exception, which then reads as
|
|
158
|
+
* an expired credential rather than a schema mismatch.
|
|
159
|
+
*
|
|
160
|
+
* bc3 renders `.to_i`, so a nil expiry arrives as `0`, never `null`. A `0`, a
|
|
161
|
+
* `null` and an absent field are all "no expiry known" and produce an Invalid
|
|
162
|
+
* Date, which is what a `Date`-typed field can say about the absence.
|
|
163
|
+
*/
|
|
164
|
+
export declare function parseExpiresAt(value: string | number | null | undefined): Date;
|
|
165
|
+
/**
|
|
166
|
+
* Filters accounts by product, or reports that it could not.
|
|
167
|
+
*
|
|
168
|
+
* A BC5 document carries no `product` on any account, so filtering it by product
|
|
169
|
+
* matches nothing. Returning `[]` there is silently wrong — the accounts exist,
|
|
170
|
+
* and the caller's next step is to pick a `href` out of a list the SDK just
|
|
171
|
+
* emptied. Instead: when *no* account in the document carries a `product`, the
|
|
172
|
+
* filter is inapplicable, and all accounts are returned with `applied: false` so
|
|
173
|
+
* a caller that cares can tell the two situations apart.
|
|
174
|
+
*
|
|
175
|
+
* When at least one account carries a `product`, the filter is meaningful and is
|
|
176
|
+
* applied normally — an empty result then genuinely means "no account matched".
|
|
177
|
+
*
|
|
178
|
+
* An **empty** account list is the edge that needs saying out loud. "No account
|
|
179
|
+
* carries a `product`" is vacuously true of `[]`, which would report the filter
|
|
180
|
+
* inapplicable — but Launchpad returns `accounts: []` for an identity with no
|
|
181
|
+
* currently accessible accounts, and that document is perfectly filterable. The
|
|
182
|
+
* result is the same list either way, so nothing observable changes; what changes
|
|
183
|
+
* is the claim the flag makes, and `applied: false` would assert "this issuer
|
|
184
|
+
* cannot filter by product" on no evidence at all. An empty list carries no
|
|
185
|
+
* evidence about the issuer, so treat the filter as applied: filtering nothing by
|
|
186
|
+
* anything yields nothing, which is exactly what happened.
|
|
187
|
+
*/
|
|
188
|
+
export declare function filterAccountsByProduct(accounts: AuthorizedAccount[], product: string): {
|
|
189
|
+
accounts: AuthorizedAccount[];
|
|
190
|
+
applied: boolean;
|
|
191
|
+
};
|
|
192
|
+
/**
|
|
193
|
+
* Maps a raw authorization document to {@link AuthorizationInfo}.
|
|
194
|
+
*
|
|
195
|
+
* Optionally applies a product filter; see {@link filterAccountsByProduct} for
|
|
196
|
+
* what happens when the document cannot be filtered by product.
|
|
197
|
+
*/
|
|
198
|
+
export declare function parseAuthorizationDocument(raw: RawAuthorizationDocument, options?: {
|
|
199
|
+
filterProduct?: string;
|
|
200
|
+
}): AuthorizationInfo;
|
|
201
|
+
//# sourceMappingURL=authorization-document.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"authorization-document.d.ts","sourceRoot":"","sources":["../../src/oauth/authorization-document.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AAEH;;;;;;GAMG;AACH,MAAM,WAAW,QAAQ;IACvB,yDAAyD;IACzD,EAAE,EAAE,MAAM,CAAC;IACX,yEAAyE;IACzE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,wEAAwE;IACxE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,4EAA4E;IAC5E,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,mCAAmC;IACnC,EAAE,EAAE,MAAM,CAAC;IACX,oBAAoB;IACpB,IAAI,EAAE,MAAM,CAAC;IACb;;;;;;OAMG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,yDAAyD;IACzD,IAAI,EAAE,MAAM,CAAC;IACb,oDAAoD;IACpD,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;;;;OAKG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,0DAA0D;IAC1D,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,oDAAoD;IACpD,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,2DAA2D;IAC3D,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC;;;;OAIG;IACH,SAAS,EAAE,IAAI,CAAC;IAChB,yCAAyC;IACzC,QAAQ,EAAE,QAAQ,CAAC;IACnB,4CAA4C;IAC5C,QAAQ,EAAE,iBAAiB,EAAE,CAAC;IAC9B;;;;;OAKG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;;;;;;OAQG;IACH,oBAAoB,CAAC,EAAE,OAAO,CAAC;CAChC;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,wBAAwB;IACvC,kEAAkE;IAClE,UAAU,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;IACpC,gFAAgF;IAChF,QAAQ,EAAE;QACR,EAAE,EAAE,MAAM,CAAC;QACX,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,aAAa,CAAC,EAAE,MAAM,CAAC;KACxB,CAAC;IACF,gFAAgF;IAChF,QAAQ,EAAE,KAAK,CAAC;QACd,EAAE,EAAE,MAAM,CAAC;QACX,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,IAAI,EAAE,MAAM,CAAC;QACb,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,MAAM,CAAC,EAAE,OAAO,CAAC;QACjB,OAAO,CAAC,EAAE,OAAO,CAAC;QAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;KACpB,CAAC,CAAC;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,IAAI,CAS9E;AAED;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAgB,uBAAuB,CACrC,QAAQ,EAAE,iBAAiB,EAAE,EAC7B,OAAO,EAAE,MAAM,GACd;IAAE,QAAQ,EAAE,iBAAiB,EAAE,CAAC;IAAC,OAAO,EAAE,OAAO,CAAA;CAAE,CAMrD;AAED;;;;;GAKG;AACH,wBAAgB,0BAA0B,CACxC,GAAG,EAAE,wBAAwB,EAC7B,OAAO,GAAE;IAAE,aAAa,CAAC,EAAE,MAAM,CAAA;CAAO,GACvC,iBAAiB,CAqCnB"}
|
|
@@ -0,0 +1,130 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The authorization document, as served by both issuers.
|
|
3
|
+
*
|
|
4
|
+
* Two different services fetch this document — {@link ../services/authorization.js | AuthorizationService}
|
|
5
|
+
* and {@link ./identity.js | discoverIdentity} — and they used to carry a copy of
|
|
6
|
+
* the mapping each. The copies had already drifted apart (`app_href` was required
|
|
7
|
+
* in one and optional in the other), which is exactly how a shape fix gets applied
|
|
8
|
+
* to one caller and missed on the other. The mapping lives here once.
|
|
9
|
+
*
|
|
10
|
+
* This module is a leaf on purpose: it imports nothing from the SDK, so either
|
|
11
|
+
* caller can take a *value* dependency on it without adding a runtime edge to the
|
|
12
|
+
* `base.ts` / `client.ts` cycle.
|
|
13
|
+
*
|
|
14
|
+
* ## Two issuers, two shapes
|
|
15
|
+
*
|
|
16
|
+
* Launchpad and a BC5 (bc3) issuer both serve `GET /authorization.json`, and the
|
|
17
|
+
* documents are not the same shape. bc3 renders its own from
|
|
18
|
+
* `app/views/api/authorizations/show.json.jbuilder`:
|
|
19
|
+
*
|
|
20
|
+
* | Field | Launchpad | BC5 |
|
|
21
|
+
* |---|---|---|
|
|
22
|
+
* | `identity.first_name` / `last_name` / `email_address` | present | absent |
|
|
23
|
+
* | `accounts[].product` / `app_href` | present | absent |
|
|
24
|
+
* | `accounts[].resource` | absent | present (RFC 8707 indicator) |
|
|
25
|
+
* | `scope` | absent | present, BC3-issued tokens only |
|
|
26
|
+
* | `expires_at` | ISO-8601 string | integer epoch **seconds** |
|
|
27
|
+
*
|
|
28
|
+
* Every field either issuer omits is typed optional here. The union is modelled
|
|
29
|
+
* rather than either shape alone, because a consumer reaches a BC5 issuer just by
|
|
30
|
+
* passing `endpoint:`, and BC5 issuers serving their own document is the intended
|
|
31
|
+
* end state.
|
|
32
|
+
*
|
|
33
|
+
* @see spec/api-gaps/bc5-authorization-document-shape.md
|
|
34
|
+
*/
|
|
35
|
+
/**
|
|
36
|
+
* Parses `expires_at` from either issuer's spelling.
|
|
37
|
+
*
|
|
38
|
+
* Launchpad sends an ISO-8601 string; bc3 sends `@token.expires_at.to_i`, an
|
|
39
|
+
* integer epoch **seconds**. The distinction is the whole point of branching on
|
|
40
|
+
* `typeof`: `new Date(2085213356)` treats the number as *milliseconds* and yields
|
|
41
|
+
* a date in 1970 — a wrong answer rather than an exception, which then reads as
|
|
42
|
+
* an expired credential rather than a schema mismatch.
|
|
43
|
+
*
|
|
44
|
+
* bc3 renders `.to_i`, so a nil expiry arrives as `0`, never `null`. A `0`, a
|
|
45
|
+
* `null` and an absent field are all "no expiry known" and produce an Invalid
|
|
46
|
+
* Date, which is what a `Date`-typed field can say about the absence.
|
|
47
|
+
*/
|
|
48
|
+
export function parseExpiresAt(value) {
|
|
49
|
+
if (typeof value === "number") {
|
|
50
|
+
// Epoch seconds, not milliseconds. `0` is bc3's rendering of a nil expiry.
|
|
51
|
+
return value === 0 ? new Date(NaN) : new Date(value * 1000);
|
|
52
|
+
}
|
|
53
|
+
if (typeof value === "string" && value !== "") {
|
|
54
|
+
return new Date(value);
|
|
55
|
+
}
|
|
56
|
+
return new Date(NaN);
|
|
57
|
+
}
|
|
58
|
+
/**
|
|
59
|
+
* Filters accounts by product, or reports that it could not.
|
|
60
|
+
*
|
|
61
|
+
* A BC5 document carries no `product` on any account, so filtering it by product
|
|
62
|
+
* matches nothing. Returning `[]` there is silently wrong — the accounts exist,
|
|
63
|
+
* and the caller's next step is to pick a `href` out of a list the SDK just
|
|
64
|
+
* emptied. Instead: when *no* account in the document carries a `product`, the
|
|
65
|
+
* filter is inapplicable, and all accounts are returned with `applied: false` so
|
|
66
|
+
* a caller that cares can tell the two situations apart.
|
|
67
|
+
*
|
|
68
|
+
* When at least one account carries a `product`, the filter is meaningful and is
|
|
69
|
+
* applied normally — an empty result then genuinely means "no account matched".
|
|
70
|
+
*
|
|
71
|
+
* An **empty** account list is the edge that needs saying out loud. "No account
|
|
72
|
+
* carries a `product`" is vacuously true of `[]`, which would report the filter
|
|
73
|
+
* inapplicable — but Launchpad returns `accounts: []` for an identity with no
|
|
74
|
+
* currently accessible accounts, and that document is perfectly filterable. The
|
|
75
|
+
* result is the same list either way, so nothing observable changes; what changes
|
|
76
|
+
* is the claim the flag makes, and `applied: false` would assert "this issuer
|
|
77
|
+
* cannot filter by product" on no evidence at all. An empty list carries no
|
|
78
|
+
* evidence about the issuer, so treat the filter as applied: filtering nothing by
|
|
79
|
+
* anything yields nothing, which is exactly what happened.
|
|
80
|
+
*/
|
|
81
|
+
export function filterAccountsByProduct(accounts, product) {
|
|
82
|
+
const filterable = accounts.length === 0 || accounts.some((a) => a.product !== undefined);
|
|
83
|
+
if (!filterable) {
|
|
84
|
+
return { accounts, applied: false };
|
|
85
|
+
}
|
|
86
|
+
return { accounts: accounts.filter((a) => a.product === product), applied: true };
|
|
87
|
+
}
|
|
88
|
+
/**
|
|
89
|
+
* Maps a raw authorization document to {@link AuthorizationInfo}.
|
|
90
|
+
*
|
|
91
|
+
* Optionally applies a product filter; see {@link filterAccountsByProduct} for
|
|
92
|
+
* what happens when the document cannot be filtered by product.
|
|
93
|
+
*/
|
|
94
|
+
export function parseAuthorizationDocument(raw, options = {}) {
|
|
95
|
+
let accounts = raw.accounts.map((a) => ({
|
|
96
|
+
id: a.id,
|
|
97
|
+
name: a.name,
|
|
98
|
+
product: a.product,
|
|
99
|
+
href: a.href,
|
|
100
|
+
appHref: a.app_href,
|
|
101
|
+
resource: a.resource,
|
|
102
|
+
hidden: a.hidden,
|
|
103
|
+
expired: a.expired,
|
|
104
|
+
featured: a.featured,
|
|
105
|
+
}));
|
|
106
|
+
let productFilterApplied;
|
|
107
|
+
if (options.filterProduct !== undefined && options.filterProduct !== "") {
|
|
108
|
+
const filtered = filterAccountsByProduct(accounts, options.filterProduct);
|
|
109
|
+
accounts = filtered.accounts;
|
|
110
|
+
productFilterApplied = filtered.applied;
|
|
111
|
+
}
|
|
112
|
+
const info = {
|
|
113
|
+
expiresAt: parseExpiresAt(raw.expires_at),
|
|
114
|
+
identity: {
|
|
115
|
+
id: raw.identity.id,
|
|
116
|
+
firstName: raw.identity.first_name,
|
|
117
|
+
lastName: raw.identity.last_name,
|
|
118
|
+
emailAddress: raw.identity.email_address,
|
|
119
|
+
},
|
|
120
|
+
accounts,
|
|
121
|
+
};
|
|
122
|
+
if (raw.scope !== undefined) {
|
|
123
|
+
info.scope = raw.scope;
|
|
124
|
+
}
|
|
125
|
+
if (productFilterApplied !== undefined) {
|
|
126
|
+
info.productFilterApplied = productFilterApplied;
|
|
127
|
+
}
|
|
128
|
+
return info;
|
|
129
|
+
}
|
|
130
|
+
//# sourceMappingURL=authorization-document.js.map
|