@jbrowse/plugin-authentication 2.4.2 → 2.6.1

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 (102) hide show
  1. package/dist/DropboxOAuthModel/configSchema.d.ts +105 -1
  2. package/dist/DropboxOAuthModel/configSchema.js +0 -8
  3. package/dist/DropboxOAuthModel/configSchema.js.map +1 -1
  4. package/dist/DropboxOAuthModel/model.d.ts +304 -8
  5. package/dist/DropboxOAuthModel/model.js +26 -35
  6. package/dist/DropboxOAuthModel/model.js.map +1 -1
  7. package/dist/DropboxOAuthModel/util.d.ts +1 -0
  8. package/dist/DropboxOAuthModel/util.js +28 -0
  9. package/dist/DropboxOAuthModel/util.js.map +1 -0
  10. package/dist/ExternalTokenModel/ExternalTokenEntryForm.d.ts +2 -2
  11. package/dist/ExternalTokenModel/ExternalTokenEntryForm.js +10 -11
  12. package/dist/ExternalTokenModel/ExternalTokenEntryForm.js.map +1 -1
  13. package/dist/ExternalTokenModel/configSchema.d.ts +36 -1
  14. package/dist/ExternalTokenModel/model.d.ts +93 -3
  15. package/dist/GoogleDriveOAuthModel/GoogleDriveFilehandle.d.ts +15 -0
  16. package/dist/GoogleDriveOAuthModel/GoogleDriveFilehandle.js +20 -0
  17. package/dist/GoogleDriveOAuthModel/GoogleDriveFilehandle.js.map +1 -0
  18. package/dist/GoogleDriveOAuthModel/configSchema.d.ts +105 -1
  19. package/dist/GoogleDriveOAuthModel/model.d.ts +219 -20
  20. package/dist/GoogleDriveOAuthModel/model.js +38 -51
  21. package/dist/GoogleDriveOAuthModel/model.js.map +1 -1
  22. package/dist/GoogleDriveOAuthModel/util.d.ts +1 -0
  23. package/dist/GoogleDriveOAuthModel/util.js +17 -0
  24. package/dist/GoogleDriveOAuthModel/util.js.map +1 -0
  25. package/dist/HTTPBasicModel/HTTPBasicLoginForm.d.ts +2 -2
  26. package/dist/HTTPBasicModel/HTTPBasicLoginForm.js +17 -21
  27. package/dist/HTTPBasicModel/HTTPBasicLoginForm.js.map +1 -1
  28. package/dist/HTTPBasicModel/configSchema.d.ts +44 -1
  29. package/dist/HTTPBasicModel/model.d.ts +135 -3
  30. package/dist/HTTPBasicModel/model.js +24 -9
  31. package/dist/HTTPBasicModel/model.js.map +1 -1
  32. package/dist/OAuthModel/configSchema.d.ts +94 -1
  33. package/dist/OAuthModel/configSchema.js +1 -9
  34. package/dist/OAuthModel/configSchema.js.map +1 -1
  35. package/dist/OAuthModel/model.d.ts +263 -8
  36. package/dist/OAuthModel/model.js +165 -113
  37. package/dist/OAuthModel/model.js.map +1 -1
  38. package/dist/OAuthModel/util.d.ts +7 -0
  39. package/dist/OAuthModel/util.js +60 -0
  40. package/dist/OAuthModel/util.js.map +1 -0
  41. package/dist/index.d.ts +954 -105
  42. package/dist/util.d.ts +6 -0
  43. package/dist/util.js +23 -0
  44. package/dist/util.js.map +1 -0
  45. package/esm/DropboxOAuthModel/configSchema.d.ts +105 -1
  46. package/esm/DropboxOAuthModel/configSchema.js +0 -8
  47. package/esm/DropboxOAuthModel/configSchema.js.map +1 -1
  48. package/esm/DropboxOAuthModel/model.d.ts +304 -8
  49. package/esm/DropboxOAuthModel/model.js +26 -35
  50. package/esm/DropboxOAuthModel/model.js.map +1 -1
  51. package/esm/DropboxOAuthModel/util.d.ts +1 -0
  52. package/esm/DropboxOAuthModel/util.js +24 -0
  53. package/esm/DropboxOAuthModel/util.js.map +1 -0
  54. package/esm/ExternalTokenModel/ExternalTokenEntryForm.d.ts +2 -2
  55. package/esm/ExternalTokenModel/ExternalTokenEntryForm.js +10 -11
  56. package/esm/ExternalTokenModel/ExternalTokenEntryForm.js.map +1 -1
  57. package/esm/ExternalTokenModel/configSchema.d.ts +36 -1
  58. package/esm/ExternalTokenModel/model.d.ts +93 -3
  59. package/esm/GoogleDriveOAuthModel/GoogleDriveFilehandle.d.ts +15 -0
  60. package/esm/GoogleDriveOAuthModel/GoogleDriveFilehandle.js +16 -0
  61. package/esm/GoogleDriveOAuthModel/GoogleDriveFilehandle.js.map +1 -0
  62. package/esm/GoogleDriveOAuthModel/configSchema.d.ts +105 -1
  63. package/esm/GoogleDriveOAuthModel/model.d.ts +219 -20
  64. package/esm/GoogleDriveOAuthModel/model.js +37 -49
  65. package/esm/GoogleDriveOAuthModel/model.js.map +1 -1
  66. package/esm/GoogleDriveOAuthModel/util.d.ts +1 -0
  67. package/esm/GoogleDriveOAuthModel/util.js +13 -0
  68. package/esm/GoogleDriveOAuthModel/util.js.map +1 -0
  69. package/esm/HTTPBasicModel/HTTPBasicLoginForm.d.ts +2 -2
  70. package/esm/HTTPBasicModel/HTTPBasicLoginForm.js +18 -22
  71. package/esm/HTTPBasicModel/HTTPBasicLoginForm.js.map +1 -1
  72. package/esm/HTTPBasicModel/configSchema.d.ts +44 -1
  73. package/esm/HTTPBasicModel/model.d.ts +135 -3
  74. package/esm/HTTPBasicModel/model.js +24 -9
  75. package/esm/HTTPBasicModel/model.js.map +1 -1
  76. package/esm/OAuthModel/configSchema.d.ts +94 -1
  77. package/esm/OAuthModel/configSchema.js +1 -9
  78. package/esm/OAuthModel/configSchema.js.map +1 -1
  79. package/esm/OAuthModel/model.d.ts +263 -8
  80. package/esm/OAuthModel/model.js +164 -86
  81. package/esm/OAuthModel/model.js.map +1 -1
  82. package/esm/OAuthModel/util.d.ts +7 -0
  83. package/esm/OAuthModel/util.js +30 -0
  84. package/esm/OAuthModel/util.js.map +1 -0
  85. package/esm/index.d.ts +954 -105
  86. package/esm/util.d.ts +6 -0
  87. package/esm/util.js +18 -0
  88. package/esm/util.js.map +1 -0
  89. package/package.json +3 -4
  90. package/src/DropboxOAuthModel/configSchema.ts +0 -8
  91. package/src/DropboxOAuthModel/model.tsx +35 -54
  92. package/src/DropboxOAuthModel/util.ts +36 -0
  93. package/src/ExternalTokenModel/ExternalTokenEntryForm.tsx +39 -41
  94. package/src/GoogleDriveOAuthModel/GoogleDriveFilehandle.ts +38 -0
  95. package/src/GoogleDriveOAuthModel/model.tsx +54 -104
  96. package/src/GoogleDriveOAuthModel/util.ts +29 -0
  97. package/src/HTTPBasicModel/HTTPBasicLoginForm.tsx +53 -56
  98. package/src/HTTPBasicModel/model.tsx +26 -11
  99. package/src/OAuthModel/configSchema.ts +2 -9
  100. package/src/OAuthModel/model.tsx +190 -108
  101. package/src/OAuthModel/util.ts +33 -0
  102. package/src/util.ts +25 -0
@@ -67,18 +67,10 @@ const OAuthConfigSchema = (0, configuration_1.ConfigurationSchema)('OAuthInterne
67
67
  * #slot
68
68
  */
69
69
  responseType: {
70
- description: 'the type of response from the authorization endpoint',
70
+ description: "the type of response from the authorization endpoint. can be 'token' or 'code'",
71
71
  type: 'string',
72
72
  defaultValue: 'code',
73
73
  },
74
- /**
75
- * #slot
76
- */
77
- hasRefreshToken: {
78
- description: 'true if the endpoint can supply a refresh token',
79
- type: 'boolean',
80
- defaultValue: false,
81
- },
82
74
  }, {
83
75
  /**
84
76
  * #baseConfiguration
@@ -1 +1 @@
1
- {"version":3,"file":"configSchema.js","sourceRoot":"","sources":["../../src/OAuthModel/configSchema.ts"],"names":[],"mappings":";;AAAA,+DAAiE;AAEjE,uEAAsF;AAEtF;;GAEG;AACH,SAAS,CAAC,KAAI,CAAC,CAAC,wDAAwD;AAExE,MAAM,iBAAiB,GAAG,IAAA,mCAAmB,EAC3C,sBAAsB,EACtB;IACE;;OAEG;IACH,SAAS,EAAE;QACT,WAAW,EAAE,oDAAoD;QACjE,IAAI,EAAE,QAAQ;QACd,YAAY,EAAE,QAAQ;KACvB;IACD;;OAEG;IACH,YAAY,EAAE;QACZ,WAAW,EAAE,yDAAyD;QACtE,IAAI,EAAE,QAAQ;QACd,YAAY,EAAE,EAAE;KACjB;IACD;;OAEG;IACH,aAAa,EAAE;QACb,WAAW,EAAE,4CAA4C;QACzD,IAAI,EAAE,QAAQ;QACd,YAAY,EAAE,EAAE;KACjB;IACD;;OAEG;IACH,SAAS,EAAE;QACT,WAAW,EAAE,uDAAuD;QACpE,IAAI,EAAE,SAAS;QACf,YAAY,EAAE,KAAK;KACpB;IACD;;OAEG;IACH,QAAQ,EAAE;QACR,WAAW,EAAE,8BAA8B;QAC3C,IAAI,EAAE,QAAQ;QACd,YAAY,EAAE,EAAE;KACjB;IACD;;OAEG;IACH,MAAM,EAAE;QACN,WAAW,EAAE,4CAA4C;QACzD,IAAI,EAAE,QAAQ;QACd,YAAY,EAAE,EAAE;KACjB;IACD;;OAEG;IACH,KAAK,EAAE;QACL,WAAW,EAAE,2CAA2C;QACxD,IAAI,EAAE,QAAQ;QACd,YAAY,EAAE,EAAE;KACjB;IACD;;OAEG;IACH,YAAY,EAAE;QACZ,WAAW,EAAE,sDAAsD;QACnE,IAAI,EAAE,QAAQ;QACd,YAAY,EAAE,MAAM;KACrB;IACD;;OAEG;IACH,eAAe,EAAE;QACf,WAAW,EAAE,iDAAiD;QAC9D,IAAI,EAAE,SAAS;QACf,YAAY,EAAE,KAAK;KACpB;CACF,EACD;IACE;;OAEG;IACH,iBAAiB,EAAE,kCAAyB;IAC5C,eAAe,EAAE,IAAI;CACtB,CACF,CAAA;AAKD,kBAAe,iBAAiB,CAAA"}
1
+ {"version":3,"file":"configSchema.js","sourceRoot":"","sources":["../../src/OAuthModel/configSchema.ts"],"names":[],"mappings":";;AAAA,+DAAiE;AAEjE,uEAAsF;AAEtF;;GAEG;AACH,SAAS,CAAC,KAAI,CAAC,CAAC,wDAAwD;AAExE,MAAM,iBAAiB,GAAG,IAAA,mCAAmB,EAC3C,sBAAsB,EACtB;IACE;;OAEG;IACH,SAAS,EAAE;QACT,WAAW,EAAE,oDAAoD;QACjE,IAAI,EAAE,QAAQ;QACd,YAAY,EAAE,QAAQ;KACvB;IACD;;OAEG;IACH,YAAY,EAAE;QACZ,WAAW,EAAE,yDAAyD;QACtE,IAAI,EAAE,QAAQ;QACd,YAAY,EAAE,EAAE;KACjB;IACD;;OAEG;IACH,aAAa,EAAE;QACb,WAAW,EAAE,4CAA4C;QACzD,IAAI,EAAE,QAAQ;QACd,YAAY,EAAE,EAAE;KACjB;IACD;;OAEG;IACH,SAAS,EAAE;QACT,WAAW,EAAE,uDAAuD;QACpE,IAAI,EAAE,SAAS;QACf,YAAY,EAAE,KAAK;KACpB;IACD;;OAEG;IACH,QAAQ,EAAE;QACR,WAAW,EAAE,8BAA8B;QAC3C,IAAI,EAAE,QAAQ;QACd,YAAY,EAAE,EAAE;KACjB;IACD;;OAEG;IACH,MAAM,EAAE;QACN,WAAW,EAAE,4CAA4C;QACzD,IAAI,EAAE,QAAQ;QACd,YAAY,EAAE,EAAE;KACjB;IACD;;OAEG;IACH,KAAK,EAAE;QACL,WAAW,EAAE,2CAA2C;QACxD,IAAI,EAAE,QAAQ;QACd,YAAY,EAAE,EAAE;KACjB;IACD;;OAEG;IACH,YAAY,EAAE;QACZ,WAAW,EACT,gFAAgF;QAClF,IAAI,EAAE,QAAQ;QACd,YAAY,EAAE,MAAM;KACrB;CACF,EACD;IACE;;OAEG;IACH,iBAAiB,EAAE,kCAAyB;IAC5C,eAAe,EAAE,IAAI;CACtB,CACF,CAAA;AAKD,kBAAe,iBAAiB,CAAA"}
@@ -1,19 +1,198 @@
1
1
  /// <reference types="react" />
2
2
  import { UriLocation } from '@jbrowse/core/util';
3
3
  import { Instance } from 'mobx-state-tree';
4
- import { OAuthInternetAccountConfigModel } from './configSchema';
5
- declare const stateModelFactory: (configSchema: OAuthInternetAccountConfigModel) => import("mobx-state-tree").IModelType<{
4
+ /**
5
+ * #stateModel OAuthInternetAccount
6
+ */
7
+ declare const stateModelFactory: (configSchema: import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
8
+ tokenType: {
9
+ description: string;
10
+ type: string;
11
+ defaultValue: string;
12
+ };
13
+ authEndpoint: {
14
+ description: string;
15
+ type: string;
16
+ defaultValue: string;
17
+ };
18
+ tokenEndpoint: {
19
+ description: string;
20
+ type: string;
21
+ defaultValue: string;
22
+ };
23
+ needsPKCE: {
24
+ description: string;
25
+ type: string;
26
+ defaultValue: boolean;
27
+ };
28
+ clientId: {
29
+ description: string; /**
30
+ * #getter
31
+ */
32
+ type: string;
33
+ defaultValue: string;
34
+ };
35
+ scopes: {
36
+ description: string;
37
+ type: string;
38
+ defaultValue: string;
39
+ };
40
+ state: {
41
+ description: string;
42
+ type: string;
43
+ defaultValue: string;
44
+ };
45
+ responseType: {
46
+ description: string;
47
+ type: string;
48
+ defaultValue: string;
49
+ };
50
+ }, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
51
+ name: {
52
+ description: string;
53
+ type: string;
54
+ defaultValue: string;
55
+ };
56
+ description: {
57
+ description: string;
58
+ type: string;
59
+ defaultValue: string;
60
+ };
61
+ authHeader: {
62
+ description: string;
63
+ type: string;
64
+ defaultValue: string;
65
+ };
66
+ tokenType: {
67
+ description: string;
68
+ type: string;
69
+ defaultValue: string;
70
+ };
71
+ domains: {
72
+ description: string;
73
+ type: string;
74
+ defaultValue: never[];
75
+ };
76
+ }, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, "internetAccountId">>, undefined>>) => import("mobx-state-tree").IModelType<{
6
77
  id: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").ISimpleType<string>, [undefined]>;
7
78
  type: import("mobx-state-tree").ISimpleType<string>;
79
+ configuration: import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
80
+ name: {
81
+ description: string;
82
+ type: string;
83
+ defaultValue: string;
84
+ };
85
+ description: {
86
+ description: string;
87
+ type: string;
88
+ defaultValue: string;
89
+ };
90
+ authHeader: {
91
+ description: string;
92
+ type: string;
93
+ defaultValue: string;
94
+ };
95
+ tokenType: {
96
+ description: string;
97
+ type: string;
98
+ defaultValue: string;
99
+ };
100
+ domains: {
101
+ description: string; /**
102
+ * #getter
103
+ */
104
+ type: string;
105
+ defaultValue: never[];
106
+ };
107
+ }, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, "internetAccountId">>;
8
108
  } & {
109
+ /**
110
+ * #property
111
+ */
9
112
  type: import("mobx-state-tree").ISimpleType<"OAuthInternetAccount">;
10
- configuration: import("mobx-state-tree").ITypeUnion<any, any, any>;
113
+ /**
114
+ * #property
115
+ */
116
+ configuration: import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
117
+ tokenType: {
118
+ description: string;
119
+ type: string;
120
+ defaultValue: string;
121
+ };
122
+ authEndpoint: {
123
+ description: string;
124
+ type: string;
125
+ defaultValue: string;
126
+ };
127
+ tokenEndpoint: {
128
+ description: string;
129
+ type: string;
130
+ defaultValue: string;
131
+ };
132
+ needsPKCE: {
133
+ description: string;
134
+ type: string;
135
+ defaultValue: boolean;
136
+ };
137
+ clientId: {
138
+ description: string; /**
139
+ * #getter
140
+ */
141
+ type: string;
142
+ defaultValue: string;
143
+ };
144
+ scopes: {
145
+ description: string;
146
+ type: string;
147
+ defaultValue: string;
148
+ };
149
+ state: {
150
+ description: string;
151
+ type: string;
152
+ defaultValue: string;
153
+ };
154
+ responseType: {
155
+ description: string;
156
+ type: string;
157
+ defaultValue: string;
158
+ };
159
+ }, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
160
+ name: {
161
+ description: string;
162
+ type: string;
163
+ defaultValue: string;
164
+ };
165
+ description: {
166
+ description: string;
167
+ type: string;
168
+ defaultValue: string;
169
+ };
170
+ authHeader: {
171
+ description: string;
172
+ type: string;
173
+ defaultValue: string;
174
+ };
175
+ tokenType: {
176
+ description: string;
177
+ type: string;
178
+ defaultValue: string;
179
+ };
180
+ domains: {
181
+ description: string;
182
+ type: string;
183
+ defaultValue: never[];
184
+ };
185
+ }, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, "internetAccountId">>, undefined>>;
11
186
  }, {
12
187
  readonly name: string;
13
188
  readonly description: string;
14
- readonly internetAccountId: string;
189
+ readonly internetAccountId: string; /**
190
+ * #getter
191
+ */
15
192
  readonly authHeader: string;
16
- readonly tokenType: string;
193
+ readonly tokenType: string; /**
194
+ * #getter
195
+ */
17
196
  readonly domains: string[];
18
197
  readonly toggleContents: import("react").ReactNode;
19
198
  readonly SelectorComponent: import("@jbrowse/core/util").AnyReactComponentType | undefined;
@@ -48,7 +227,10 @@ declare const stateModelFactory: (configSchema: OAuthInternetAccountConfigModel)
48
227
  getPreAuthorizationInformation(location: UriLocation): Promise<{
49
228
  internetAccountType: string;
50
229
  authInfo: {
51
- token: string;
230
+ token: string; /**
231
+ * #action
232
+ * used to listen to child window for auth code/token
233
+ */
52
234
  configuration: any;
53
235
  };
54
236
  }>;
@@ -57,34 +239,107 @@ declare const stateModelFactory: (configSchema: OAuthInternetAccountConfigModel)
57
239
  } & {
58
240
  openLocation(location: UriLocation): import("@jbrowse/core/util/io").RemoteFileWithRangeCache;
59
241
  } & {
242
+ /**
243
+ * #getter
244
+ */
60
245
  readonly codeVerifierPKCE: string;
61
246
  } & {
247
+ /**
248
+ * #getter
249
+ */
62
250
  readonly authEndpoint: string;
251
+ /**
252
+ * #getter
253
+ */
63
254
  readonly tokenEndpoint: string;
255
+ /**
256
+ * #getter
257
+ */
64
258
  readonly needsPKCE: boolean;
259
+ /**
260
+ * #getter
261
+ */
65
262
  readonly clientId: string;
263
+ /**
264
+ * #getter
265
+ */
66
266
  readonly scopes: string;
67
267
  /**
68
- * OAuth state parameter: https://www.rfc-editor.org/rfc/rfc6749#section-4.1.1
268
+ * #method
269
+ * OAuth state parameter:
270
+ * https://www.rfc-editor.org/rfc/rfc6749#section-4.1.1
271
+ *
69
272
  * Can override or extend if dynamic state is needed.
70
273
  */
71
274
  state(): string | undefined;
275
+ /**
276
+ * #getter
277
+ */
72
278
  readonly responseType: "code" | "token";
73
- readonly hasRefreshToken: boolean;
279
+ /**
280
+ * #getter
281
+ */
74
282
  readonly refreshTokenKey: string;
75
283
  } & {
284
+ /**
285
+ * #action
286
+ */
76
287
  storeRefreshToken(refreshToken: string): void;
288
+ /**
289
+ * #action
290
+ */
77
291
  removeRefreshToken(): void;
292
+ /**
293
+ * #method
294
+ */
78
295
  retrieveRefreshToken(): string | null;
296
+ /**
297
+ * #action
298
+ */
79
299
  exchangeAuthorizationForAccessToken(token: string, redirectUri: string): Promise<string>;
300
+ /**
301
+ * #action
302
+ */
80
303
  exchangeRefreshForAccessToken(refreshToken: string): Promise<string>;
81
304
  } & {
305
+ /**
306
+ * #action
307
+ * used to listen to child window for auth code/token
308
+ */
82
309
  addMessageChannel(resolve: (token: string) => void, reject: (error: Error) => void): void;
310
+ /**
311
+ * #action
312
+ */
83
313
  deleteMessageChannel(): void;
314
+ /**
315
+ * #action
316
+ */
84
317
  finishOAuthWindow(event: MessageEvent, resolve: (token: string) => void, reject: (error: Error) => void): Promise<void>;
318
+ /**
319
+ * #action
320
+ * opens external OAuth flow, popup for web and new browser window for
321
+ * desktop
322
+ */
85
323
  useEndpointForAuthorization(resolve: (token: string) => void, reject: (error: Error) => void): Promise<void>;
324
+ /**
325
+ * #action
326
+ */
86
327
  getTokenFromUser(resolve: (token: string) => void, reject: (error: Error) => void): Promise<void>;
328
+ /**
329
+ * #action
330
+ */
87
331
  validateToken(token: string, location: UriLocation): Promise<string>;
332
+ } & {
333
+ /**
334
+ * #action
335
+ * Get a fetch method that will add any needed authentication headers to
336
+ * the request before sending it. If location is provided, it will be
337
+ * checked to see if it includes a token in it's pre-auth information.
338
+ *
339
+ * @param loc - UriLocation of the resource
340
+ * @returns A function that can be used to fetch
341
+ */
342
+ getFetcher(loc?: UriLocation): (input: RequestInfo, init?: RequestInit) => Promise<Response>;
88
343
  }, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>;
89
344
  export default stateModelFactory;
90
345
  export type OAuthStateModel = ReturnType<typeof stateModelFactory>;