@globus/sdk 0.5.0 → 0.6.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 (205) hide show
  1. package/dist/browser/src/index.d.ts +36 -0
  2. package/dist/browser/src/index.d.ts.map +1 -0
  3. package/dist/browser/src/index.js +43 -0
  4. package/dist/browser/src/index.js.map +1 -0
  5. package/dist/browser/src/lib/core/authorization.d.ts +30 -0
  6. package/dist/browser/src/lib/core/authorization.d.ts.map +1 -0
  7. package/dist/browser/src/lib/core/authorization.js +87 -0
  8. package/dist/browser/src/lib/core/authorization.js.map +1 -0
  9. package/dist/browser/src/lib/core/consent.d.ts +6 -0
  10. package/dist/browser/src/lib/core/consent.d.ts.map +1 -0
  11. package/dist/browser/src/lib/core/consent.js +27 -0
  12. package/dist/browser/src/lib/core/consent.js.map +1 -0
  13. package/dist/browser/src/lib/core/errors.d.ts +5 -0
  14. package/dist/browser/src/lib/core/errors.d.ts.map +1 -0
  15. package/dist/browser/src/lib/core/errors.js +8 -0
  16. package/dist/browser/src/lib/core/errors.js.map +1 -0
  17. package/dist/browser/src/lib/core/fetch.d.ts +7 -0
  18. package/dist/browser/src/lib/core/fetch.d.ts.map +1 -0
  19. package/dist/browser/src/lib/core/fetch.js +17 -0
  20. package/dist/browser/src/lib/core/fetch.js.map +1 -0
  21. package/dist/browser/src/lib/core/global.d.ts +38 -0
  22. package/dist/browser/src/lib/core/global.d.ts.map +1 -0
  23. package/dist/browser/src/lib/core/global.js +92 -0
  24. package/dist/browser/src/lib/core/global.js.map +1 -0
  25. package/dist/browser/src/lib/core/internals/__mocks__/fetch.d.ts +2 -0
  26. package/dist/browser/src/lib/core/internals/__mocks__/fetch.d.ts.map +1 -0
  27. package/dist/browser/src/lib/core/internals/__mocks__/fetch.js +4 -0
  28. package/dist/browser/src/lib/core/internals/__mocks__/fetch.js.map +1 -0
  29. package/dist/browser/src/lib/core/internals/fetch.d.ts +2 -0
  30. package/dist/browser/src/lib/core/internals/fetch.d.ts.map +1 -0
  31. package/dist/browser/src/lib/core/internals/fetch.js +3 -0
  32. package/dist/browser/src/lib/core/internals/fetch.js.map +1 -0
  33. package/dist/browser/src/lib/core/storage/index.d.ts +19 -0
  34. package/dist/browser/src/lib/core/storage/index.d.ts.map +1 -0
  35. package/dist/browser/src/lib/core/storage/index.js +30 -0
  36. package/dist/browser/src/lib/core/storage/index.js.map +1 -0
  37. package/dist/browser/src/lib/core/storage/local-storage.d.ts +8 -0
  38. package/dist/browser/src/lib/core/storage/local-storage.d.ts.map +1 -0
  39. package/dist/browser/src/lib/core/storage/local-storage.js +16 -0
  40. package/dist/browser/src/lib/core/storage/local-storage.js.map +1 -0
  41. package/dist/browser/src/lib/core/storage/memory.d.ts +9 -0
  42. package/dist/browser/src/lib/core/storage/memory.d.ts.map +1 -0
  43. package/dist/browser/src/lib/core/storage/memory.js +21 -0
  44. package/dist/browser/src/lib/core/storage/memory.js.map +1 -0
  45. package/dist/browser/src/lib/core/url.d.ts +31 -0
  46. package/dist/browser/src/lib/core/url.d.ts.map +1 -0
  47. package/dist/browser/src/lib/core/url.js +54 -0
  48. package/dist/browser/src/lib/core/url.js.map +1 -0
  49. package/dist/browser/src/lib/services/auth/config.d.ts +4 -0
  50. package/dist/browser/src/lib/services/auth/config.d.ts.map +1 -0
  51. package/dist/browser/src/lib/services/auth/config.js +10 -0
  52. package/dist/browser/src/lib/services/auth/config.js.map +1 -0
  53. package/dist/browser/src/lib/services/auth/index.d.ts +21 -0
  54. package/dist/browser/src/lib/services/auth/index.d.ts.map +1 -0
  55. package/dist/browser/src/lib/services/auth/index.js +20 -0
  56. package/dist/browser/src/lib/services/auth/index.js.map +1 -0
  57. package/dist/browser/src/lib/services/auth/types.d.ts +15 -0
  58. package/dist/browser/src/lib/services/auth/types.d.ts.map +1 -0
  59. package/dist/browser/src/lib/services/auth/types.js +2 -0
  60. package/dist/browser/src/lib/services/auth/types.js.map +1 -0
  61. package/dist/browser/src/lib/services/flows/config.d.ts +14 -0
  62. package/dist/browser/src/lib/services/flows/config.d.ts.map +1 -0
  63. package/dist/browser/src/lib/services/flows/config.js +20 -0
  64. package/dist/browser/src/lib/services/flows/config.js.map +1 -0
  65. package/dist/browser/src/lib/services/flows/index.d.ts +15 -0
  66. package/dist/browser/src/lib/services/flows/index.d.ts.map +1 -0
  67. package/dist/browser/src/lib/services/flows/index.js +17 -0
  68. package/dist/browser/src/lib/services/flows/index.js.map +1 -0
  69. package/dist/browser/src/lib/services/flows/service/flows.d.ts +17 -0
  70. package/dist/browser/src/lib/services/flows/service/flows.d.ts.map +1 -0
  71. package/dist/browser/src/lib/services/flows/service/flows.js +27 -0
  72. package/dist/browser/src/lib/services/flows/service/flows.js.map +1 -0
  73. package/dist/browser/src/lib/services/flows/service/runs.d.ts +10 -0
  74. package/dist/browser/src/lib/services/flows/service/runs.d.ts.map +1 -0
  75. package/dist/browser/src/lib/services/flows/service/runs.js +14 -0
  76. package/dist/browser/src/lib/services/flows/service/runs.js.map +1 -0
  77. package/dist/browser/src/lib/services/globus-connect-server/client.d.ts +3420 -0
  78. package/dist/browser/src/lib/services/globus-connect-server/client.d.ts.map +1 -0
  79. package/dist/browser/src/lib/services/globus-connect-server/client.js +48 -0
  80. package/dist/browser/src/lib/services/globus-connect-server/client.js.map +1 -0
  81. package/dist/browser/src/lib/services/globus-connect-server/index.d.ts +47 -0
  82. package/dist/browser/src/lib/services/globus-connect-server/index.d.ts.map +1 -0
  83. package/dist/browser/src/lib/services/globus-connect-server/index.js +26 -0
  84. package/dist/browser/src/lib/services/globus-connect-server/index.js.map +1 -0
  85. package/dist/browser/src/lib/services/globus-connect-server/service/collections.d.ts +29 -0
  86. package/dist/browser/src/lib/services/globus-connect-server/service/collections.d.ts.map +1 -0
  87. package/dist/browser/src/lib/services/globus-connect-server/service/collections.js +20 -0
  88. package/dist/browser/src/lib/services/globus-connect-server/service/collections.js.map +1 -0
  89. package/dist/browser/src/lib/services/globus-connect-server/service/endpoint.d.ts +7 -0
  90. package/dist/browser/src/lib/services/globus-connect-server/service/endpoint.d.ts.map +1 -0
  91. package/dist/browser/src/lib/services/globus-connect-server/service/endpoint.js +11 -0
  92. package/dist/browser/src/lib/services/globus-connect-server/service/endpoint.js.map +1 -0
  93. package/dist/browser/src/lib/services/globus-connect-server/service/roles.d.ts +19 -0
  94. package/dist/browser/src/lib/services/globus-connect-server/service/roles.d.ts.map +1 -0
  95. package/dist/browser/src/lib/services/globus-connect-server/service/roles.js +20 -0
  96. package/dist/browser/src/lib/services/globus-connect-server/service/roles.js.map +1 -0
  97. package/dist/browser/src/lib/services/globus-connect-server/service/storage-gateways.d.ts +27 -0
  98. package/dist/browser/src/lib/services/globus-connect-server/service/storage-gateways.d.ts.map +1 -0
  99. package/dist/browser/src/lib/services/globus-connect-server/service/storage-gateways.js +22 -0
  100. package/dist/browser/src/lib/services/globus-connect-server/service/storage-gateways.js.map +1 -0
  101. package/dist/browser/src/lib/services/globus-connect-server/service/user-credentials.d.ts +20 -0
  102. package/dist/browser/src/lib/services/globus-connect-server/service/user-credentials.d.ts.map +1 -0
  103. package/dist/browser/src/lib/services/globus-connect-server/service/user-credentials.js +20 -0
  104. package/dist/browser/src/lib/services/globus-connect-server/service/user-credentials.js.map +1 -0
  105. package/dist/browser/src/lib/services/globus-connect-server/service/versioning.d.ts +8 -0
  106. package/dist/browser/src/lib/services/globus-connect-server/service/versioning.d.ts.map +1 -0
  107. package/dist/browser/src/lib/services/globus-connect-server/service/versioning.js +12 -0
  108. package/dist/browser/src/lib/services/globus-connect-server/service/versioning.js.map +1 -0
  109. package/dist/browser/src/lib/services/groups/config.d.ts +11 -0
  110. package/dist/browser/src/lib/services/groups/config.d.ts.map +1 -0
  111. package/dist/browser/src/lib/services/groups/config.js +17 -0
  112. package/dist/browser/src/lib/services/groups/config.js.map +1 -0
  113. package/dist/browser/src/lib/services/groups/index.d.ts +19 -0
  114. package/dist/browser/src/lib/services/groups/index.d.ts.map +1 -0
  115. package/dist/browser/src/lib/services/groups/index.js +19 -0
  116. package/dist/browser/src/lib/services/groups/index.js.map +1 -0
  117. package/dist/browser/src/lib/services/groups/service/groups.d.ts +28 -0
  118. package/dist/browser/src/lib/services/groups/service/groups.d.ts.map +1 -0
  119. package/dist/browser/src/lib/services/groups/service/groups.js +22 -0
  120. package/dist/browser/src/lib/services/groups/service/groups.js.map +1 -0
  121. package/dist/browser/src/lib/services/groups/service/membership.d.ts +14 -0
  122. package/dist/browser/src/lib/services/groups/service/membership.d.ts.map +1 -0
  123. package/dist/browser/src/lib/services/groups/service/membership.js +14 -0
  124. package/dist/browser/src/lib/services/groups/service/membership.js.map +1 -0
  125. package/dist/browser/src/lib/services/groups/service/policies.d.ts +7 -0
  126. package/dist/browser/src/lib/services/groups/service/policies.d.ts.map +1 -0
  127. package/dist/browser/src/lib/services/groups/service/policies.js +11 -0
  128. package/dist/browser/src/lib/services/groups/service/policies.js.map +1 -0
  129. package/dist/browser/src/lib/services/search/config.d.ts +12 -0
  130. package/dist/browser/src/lib/services/search/config.d.ts.map +1 -0
  131. package/dist/browser/src/lib/services/search/config.js +18 -0
  132. package/dist/browser/src/lib/services/search/config.js.map +1 -0
  133. package/dist/browser/src/lib/services/search/index.d.ts +14 -0
  134. package/dist/browser/src/lib/services/search/index.d.ts.map +1 -0
  135. package/dist/browser/src/lib/services/search/index.js +15 -0
  136. package/dist/browser/src/lib/services/search/index.js.map +1 -0
  137. package/dist/browser/src/lib/services/search/service/query.d.ts +24 -0
  138. package/dist/browser/src/lib/services/search/service/query.d.ts.map +1 -0
  139. package/dist/browser/src/lib/services/search/service/query.js +15 -0
  140. package/dist/browser/src/lib/services/search/service/query.js.map +1 -0
  141. package/dist/browser/src/lib/services/shared.d.ts +7 -0
  142. package/dist/browser/src/lib/services/shared.d.ts.map +1 -0
  143. package/dist/browser/src/lib/services/shared.js +8 -0
  144. package/dist/browser/src/lib/services/shared.js.map +1 -0
  145. package/dist/browser/src/lib/services/transfer/config.d.ts +4 -0
  146. package/dist/browser/src/lib/services/transfer/config.d.ts.map +1 -0
  147. package/dist/browser/src/lib/services/transfer/config.js +10 -0
  148. package/dist/browser/src/lib/services/transfer/config.js.map +1 -0
  149. package/dist/browser/src/lib/services/transfer/index.d.ts +18 -0
  150. package/dist/browser/src/lib/services/transfer/index.d.ts.map +1 -0
  151. package/dist/browser/src/lib/services/transfer/index.js +21 -0
  152. package/dist/browser/src/lib/services/transfer/index.js.map +1 -0
  153. package/dist/browser/src/lib/services/transfer/service/endpoint-search.d.ts +17 -0
  154. package/dist/browser/src/lib/services/transfer/service/endpoint-search.d.ts.map +1 -0
  155. package/dist/browser/src/lib/services/transfer/service/endpoint-search.js +23 -0
  156. package/dist/browser/src/lib/services/transfer/service/endpoint-search.js.map +1 -0
  157. package/dist/browser/src/lib/services/transfer/service/endpoint.d.ts +5 -0
  158. package/dist/browser/src/lib/services/transfer/service/endpoint.d.ts.map +1 -0
  159. package/dist/browser/src/lib/services/transfer/service/endpoint.js +11 -0
  160. package/dist/browser/src/lib/services/transfer/service/endpoint.js.map +1 -0
  161. package/dist/browser/src/lib/services/transfer/service/file-operations.d.ts +63 -0
  162. package/dist/browser/src/lib/services/transfer/service/file-operations.d.ts.map +1 -0
  163. package/dist/browser/src/lib/services/transfer/service/file-operations.js +50 -0
  164. package/dist/browser/src/lib/services/transfer/service/file-operations.js.map +1 -0
  165. package/dist/browser/src/lib/services/transfer/service/task-submission.d.ts +30 -0
  166. package/dist/browser/src/lib/services/transfer/service/task-submission.d.ts.map +1 -0
  167. package/dist/browser/src/lib/services/transfer/service/task-submission.js +30 -0
  168. package/dist/browser/src/lib/services/transfer/service/task-submission.js.map +1 -0
  169. package/dist/browser/src/lib/services/transfer/shared.d.ts +3 -0
  170. package/dist/browser/src/lib/services/transfer/shared.d.ts.map +1 -0
  171. package/dist/browser/src/lib/services/transfer/shared.js +10 -0
  172. package/dist/browser/src/lib/services/transfer/shared.js.map +1 -0
  173. package/dist/browser/src/lib/services/transfer/types.d.ts +43 -0
  174. package/dist/browser/src/lib/services/transfer/types.d.ts.map +1 -0
  175. package/dist/browser/src/lib/services/transfer/types.js +2 -0
  176. package/dist/browser/src/lib/services/transfer/types.js.map +1 -0
  177. package/dist/browser/src/lib/services/types.d.ts +44 -0
  178. package/dist/browser/src/lib/services/types.d.ts.map +1 -0
  179. package/dist/browser/src/lib/services/types.js +2 -0
  180. package/dist/browser/src/lib/services/types.js.map +1 -0
  181. package/dist/browser/tsconfig.browser.tsbuildinfo +1 -0
  182. package/dist/browser-bundle.js +1 -0
  183. package/dist/commonjs/src/lib/services/transfer/service/endpoint-search.d.ts +3 -0
  184. package/dist/commonjs/src/lib/services/transfer/service/endpoint-search.d.ts.map +1 -1
  185. package/dist/commonjs/tsconfig.cjs.tsbuildinfo +1 -1
  186. package/dist/src/lib/services/transfer/service/endpoint-search.d.ts +3 -0
  187. package/dist/src/lib/services/transfer/service/endpoint-search.d.ts.map +1 -1
  188. package/dist/tsconfig.tsbuildinfo +1 -1
  189. package/package.json +7 -4
  190. package/dist/commonjs/src/lib/sdk.d.ts +0 -2
  191. package/dist/commonjs/src/lib/sdk.d.ts.map +0 -1
  192. package/dist/commonjs/src/lib/sdk.js +0 -8
  193. package/dist/commonjs/src/lib/sdk.js.map +0 -1
  194. package/dist/commonjs/src/lib/services/flows/service/batch.d.ts +0 -3
  195. package/dist/commonjs/src/lib/services/flows/service/batch.d.ts.map +0 -1
  196. package/dist/commonjs/src/lib/services/flows/service/batch.js +0 -4
  197. package/dist/commonjs/src/lib/services/flows/service/batch.js.map +0 -1
  198. package/dist/src/lib/sdk.d.ts +0 -2
  199. package/dist/src/lib/sdk.d.ts.map +0 -1
  200. package/dist/src/lib/sdk.js +0 -4
  201. package/dist/src/lib/sdk.js.map +0 -1
  202. package/dist/src/lib/services/flows/service/batch.d.ts +0 -3
  203. package/dist/src/lib/services/flows/service/batch.d.ts.map +0 -1
  204. package/dist/src/lib/services/flows/service/batch.js +0 -2
  205. package/dist/src/lib/services/flows/service/batch.js.map +0 -1
@@ -0,0 +1,36 @@
1
+ /**
2
+ * @module @globus/sdk
3
+ * @description `@globus/sdk` provides modules for interacting with the various APIs that make up the Globus platform.
4
+ *
5
+ * ### Key Concepts
6
+ * - All service methods return a `Promise` that resolves to a [Fetch API Response object](https://developer.mozilla.org/en-US/docs/Web/API/Response).
7
+ * - Under the hood, we are returning the result of a composed [`fetch`](https://developer.mozilla.org/en-US/docs/Web/API/fetch).
8
+ * - All service methods accept a `ServiceMethodOptions` object to pass query parameters and a payload.
9
+ * - All service methods support a tail argument to pass options to the SDK, including the composed `fetch` call.
10
+ *
11
+ * @example <caption>Using the SDK to search for endpoints via Transfer API.</caption>
12
+ * import { transfer } from "@globus/sdk";
13
+ *
14
+ * const result = await (await transfer.endpointSearch({ query: { filter_fulltext: 'Globus Tutorial' }}, {
15
+ * fetch: {
16
+ * // Provide parameters to the underlying `fetch` call.
17
+ * // https://developer.mozilla.org/en-US/docs/Web/API/fetch#parameters
18
+ * headers: {
19
+ * Authorization: `Bearer MY_ACCESS_TOKEN`
20
+ * }
21
+ * }
22
+ * })).json();
23
+ *
24
+ * @example <caption>Using the SDK to fetch a single flow from the Flows API.</caption>
25
+ * import { flows } from "@globus/sdk";
26
+ *
27
+ * const result = await (await flows.flows.get("452bbea3-5e3b-45a5-af08-50179839a4e8")).json();
28
+ */
29
+ export * as authorization from "./lib/core/authorization";
30
+ export * as auth from "./lib/services/auth";
31
+ export * as transfer from "./lib/services/transfer";
32
+ export * as search from "./lib/services/search";
33
+ export * as groups from "./lib/services/groups";
34
+ export * as flows from "./lib/services/flows";
35
+ export * as gcs from "./lib/services/globus-connect-server";
36
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AAMH,OAAO,KAAK,aAAa,MAAM,0BAA0B,CAAC;AAC1D,OAAO,KAAK,IAAI,MAAM,qBAAqB,CAAC;AAC5C,OAAO,KAAK,QAAQ,MAAM,yBAAyB,CAAC;AACpD,OAAO,KAAK,MAAM,MAAM,uBAAuB,CAAC;AAChD,OAAO,KAAK,MAAM,MAAM,uBAAuB,CAAC;AAChD,OAAO,KAAK,KAAK,MAAM,sBAAsB,CAAC;AAC9C,OAAO,KAAK,GAAG,MAAM,sCAAsC,CAAC"}
@@ -0,0 +1,43 @@
1
+ /**
2
+ * @module @globus/sdk
3
+ * @description `@globus/sdk` provides modules for interacting with the various APIs that make up the Globus platform.
4
+ *
5
+ * ### Key Concepts
6
+ * - All service methods return a `Promise` that resolves to a [Fetch API Response object](https://developer.mozilla.org/en-US/docs/Web/API/Response).
7
+ * - Under the hood, we are returning the result of a composed [`fetch`](https://developer.mozilla.org/en-US/docs/Web/API/fetch).
8
+ * - All service methods accept a `ServiceMethodOptions` object to pass query parameters and a payload.
9
+ * - All service methods support a tail argument to pass options to the SDK, including the composed `fetch` call.
10
+ *
11
+ * @example <caption>Using the SDK to search for endpoints via Transfer API.</caption>
12
+ * import { transfer } from "@globus/sdk";
13
+ *
14
+ * const result = await (await transfer.endpointSearch({ query: { filter_fulltext: 'Globus Tutorial' }}, {
15
+ * fetch: {
16
+ * // Provide parameters to the underlying `fetch` call.
17
+ * // https://developer.mozilla.org/en-US/docs/Web/API/fetch#parameters
18
+ * headers: {
19
+ * Authorization: `Bearer MY_ACCESS_TOKEN`
20
+ * }
21
+ * }
22
+ * })).json();
23
+ *
24
+ * @example <caption>Using the SDK to fetch a single flow from the Flows API.</caption>
25
+ * import { flows } from "@globus/sdk";
26
+ *
27
+ * const result = await (await flows.flows.get("452bbea3-5e3b-45a5-af08-50179839a4e8")).json();
28
+ */
29
+ import * as authorization_1 from "./lib/core/authorization";
30
+ export { authorization_1 as authorization };
31
+ import * as auth_1 from "./lib/services/auth";
32
+ export { auth_1 as auth };
33
+ import * as transfer_1 from "./lib/services/transfer";
34
+ export { transfer_1 as transfer };
35
+ import * as search_1 from "./lib/services/search";
36
+ export { search_1 as search };
37
+ import * as groups_1 from "./lib/services/groups";
38
+ export { groups_1 as groups };
39
+ import * as flows_1 from "./lib/services/flows";
40
+ export { flows_1 as flows };
41
+ import * as gcs_1 from "./lib/services/globus-connect-server";
42
+ export { gcs_1 as gcs };
43
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;iCAM4B,0BAA0B;4BAA7C,aAAa;wBACH,qBAAqB;mBAA/B,IAAI;4BACU,yBAAyB;uBAAvC,QAAQ;0BACI,uBAAuB;qBAAnC,MAAM;0BACM,uBAAuB;qBAAnC,MAAM;yBACK,sBAAsB;oBAAjC,KAAK;uBACI,sCAAsC;kBAA/C,GAAG"}
@@ -0,0 +1,30 @@
1
+ import type IConfig from "js-pkce/dist/IConfig";
2
+ type PKCEConfiguration = {
3
+ client_id?: IConfig["client_id"];
4
+ requested_scopes: IConfig["requested_scopes"];
5
+ redirect_uri: IConfig["redirect_uri"];
6
+ };
7
+ /**
8
+ * @experimental
9
+ */
10
+ export declare class PKCEAuthorization {
11
+ #private;
12
+ constructor(configuration: PKCEConfiguration);
13
+ reset(): void;
14
+ redirect(): void;
15
+ handleCodeRedirect(options?: {
16
+ removeStateAndReplaceLocation: boolean;
17
+ }): Promise<void>;
18
+ hasToken(): boolean;
19
+ revoke(): void;
20
+ }
21
+ /**
22
+ * @experimental
23
+ */
24
+ export declare function pkce(configuration: PKCEConfiguration): PKCEAuthorization;
25
+ /**
26
+ * @experimental
27
+ */
28
+ export declare function incremental(configuration: PKCEConfiguration): PKCEAuthorization;
29
+ export {};
30
+ //# sourceMappingURL=authorization.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"authorization.d.ts","sourceRoot":"","sources":["../../../../../src/lib/core/authorization.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,OAAO,MAAM,sBAAsB,CAAC;AAahD,KAAK,iBAAiB,GAAG;IACvB,SAAS,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;IACjC,gBAAgB,EAAE,OAAO,CAAC,kBAAkB,CAAC,CAAC;IAC9C,YAAY,EAAE,OAAO,CAAC,cAAc,CAAC,CAAC;CACvC,CAAC;AAEF;;GAEG;AACH,qBAAa,iBAAiB;;gBAKhB,aAAa,EAAE,iBAAiB;IA2B5C,KAAK;IAKL,QAAQ;IAKF,kBAAkB,CAAC,OAAO;;KAA0C;IAiB1E,QAAQ,IAAI,OAAO;IAMnB,MAAM;CAGP;AAED;;GAEG;AACH,wBAAgB,IAAI,CAAC,aAAa,EAAE,iBAAiB,qBAEpD;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,aAAa,EAAE,iBAAiB,qBAE3D"}
@@ -0,0 +1,87 @@
1
+ var _PKCEAuthorization_instances, _PKCEAuthorization_pkce, _PKCEAuthorization_configuration, _PKCEAuthorization_response, _PKCEAuthorization_createPKCEInstance, _PKCEAuthorization_resetPKCE;
2
+ import { __awaiter, __classPrivateFieldGet, __classPrivateFieldSet } from "tslib";
3
+ /**
4
+ * @description Session and authorization management via PKCE.
5
+ * @group Core
6
+ * @module
7
+ * @experimental
8
+ */
9
+ import PKCE from "js-pkce";
10
+ import { getAuthorizationEndpoint, getTokenEndpoint } from "../services/auth";
11
+ import { addTokenResponse, getTokenForScope, reset as resetTokens, } from "./consent";
12
+ import { createStorage } from "./storage";
13
+ let storage;
14
+ /**
15
+ * @experimental
16
+ */
17
+ export class PKCEAuthorization {
18
+ constructor(configuration) {
19
+ _PKCEAuthorization_instances.add(this);
20
+ _PKCEAuthorization_pkce.set(this, void 0);
21
+ _PKCEAuthorization_configuration.set(this, void 0);
22
+ _PKCEAuthorization_response.set(this, void 0);
23
+ storage = createStorage("localStorage");
24
+ if (!configuration.client_id) {
25
+ throw new Error("You must provide a `client_id`.");
26
+ }
27
+ __classPrivateFieldSet(this, _PKCEAuthorization_configuration, Object.assign({ client_id: configuration.client_id, authorization_endpoint: getAuthorizationEndpoint(), token_endpoint: getTokenEndpoint() }, configuration), "f");
28
+ __classPrivateFieldSet(this, _PKCEAuthorization_pkce, __classPrivateFieldGet(this, _PKCEAuthorization_instances, "m", _PKCEAuthorization_createPKCEInstance).call(this), "f");
29
+ }
30
+ reset() {
31
+ __classPrivateFieldGet(this, _PKCEAuthorization_instances, "m", _PKCEAuthorization_resetPKCE).call(this);
32
+ resetTokens();
33
+ }
34
+ redirect() {
35
+ this.reset();
36
+ window.location.replace(__classPrivateFieldGet(this, _PKCEAuthorization_pkce, "f").authorizeUrl());
37
+ }
38
+ handleCodeRedirect(options = { removeStateAndReplaceLocation: true }) {
39
+ return __awaiter(this, void 0, void 0, function* () {
40
+ const url = new URL(window.location.href);
41
+ const params = new URLSearchParams(url.search);
42
+ if (!params.get("code"))
43
+ return;
44
+ const response = yield __classPrivateFieldGet(this, _PKCEAuthorization_pkce, "f").exchangeForAccessToken(url.toString());
45
+ __classPrivateFieldSet(this, _PKCEAuthorization_response, response, "f");
46
+ addTokenResponse(__classPrivateFieldGet(this, _PKCEAuthorization_response, "f"));
47
+ // Remove PKCE-state from the URL since we have a token.
48
+ if (options.removeStateAndReplaceLocation) {
49
+ params.delete("code");
50
+ params.delete("state");
51
+ url.search = params.toString();
52
+ window.location.replace(url);
53
+ }
54
+ });
55
+ }
56
+ hasToken() {
57
+ return __classPrivateFieldGet(this, _PKCEAuthorization_configuration, "f").requested_scopes
58
+ .split(" ")
59
+ .every((scope) => Boolean(getTokenForScope(scope)));
60
+ }
61
+ revoke() {
62
+ this.reset();
63
+ }
64
+ }
65
+ _PKCEAuthorization_pkce = new WeakMap(), _PKCEAuthorization_configuration = new WeakMap(), _PKCEAuthorization_response = new WeakMap(), _PKCEAuthorization_instances = new WeakSet(), _PKCEAuthorization_createPKCEInstance = function _PKCEAuthorization_createPKCEInstance() {
66
+ return new PKCE(__classPrivateFieldGet(this, _PKCEAuthorization_configuration, "f"));
67
+ }, _PKCEAuthorization_resetPKCE = function _PKCEAuthorization_resetPKCE() {
68
+ /**
69
+ * Resets js-pkce state
70
+ * @see https://github.com/bpedroza/js-pkce/blob/master/src/PKCE.ts
71
+ */
72
+ sessionStorage.removeItem("pkce_state");
73
+ sessionStorage.removeItem("pkce_code_verifier");
74
+ };
75
+ /**
76
+ * @experimental
77
+ */
78
+ export function pkce(configuration) {
79
+ return new PKCEAuthorization(configuration);
80
+ }
81
+ /**
82
+ * @experimental
83
+ */
84
+ export function incremental(configuration) {
85
+ return new PKCEAuthorization(configuration);
86
+ }
87
+ //# sourceMappingURL=authorization.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"authorization.js","sourceRoot":"","sources":["../../../../../src/lib/core/authorization.ts"],"names":[],"mappings":";;AAAA;;;;;GAKG;AACH,OAAO,IAAI,MAAM,SAAS,CAAC;AAI3B,OAAO,EAAE,wBAAwB,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAC9E,OAAO,EACL,gBAAgB,EAChB,gBAAgB,EAChB,KAAK,IAAI,WAAW,GACrB,MAAM,WAAW,CAAC;AAEnB,OAAO,EAAE,aAAa,EAAiB,MAAM,WAAW,CAAC;AAEzD,IAAI,OAAsB,CAAC;AAQ3B;;GAEG;AACH,MAAM,OAAO,iBAAiB;IAK5B,YAAY,aAAgC;;QAJ5C,0CAAY;QACZ,mDAAwB;QACxB,8CAAsC;QAGpC,OAAO,GAAG,aAAa,CAAC,cAAc,CAAC,CAAC;QACxC,IAAI,CAAC,aAAa,CAAC,SAAS,EAAE;YAC5B,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAC;SACpD;QACD,uBAAA,IAAI,oDACF,SAAS,EAAE,aAAa,CAAC,SAAS,EAClC,sBAAsB,EAAE,wBAAwB,EAAE,EAClD,cAAc,EAAE,gBAAgB,EAAE,IAC/B,aAAa,OACjB,CAAC;QACF,uBAAA,IAAI,2BAAS,uBAAA,IAAI,2EAAoB,MAAxB,IAAI,CAAsB,MAAA,CAAC;IAC1C,CAAC;IAeD,KAAK;QACH,uBAAA,IAAI,kEAAW,MAAf,IAAI,CAAa,CAAC;QAClB,WAAW,EAAE,CAAC;IAChB,CAAC;IAED,QAAQ;QACN,IAAI,CAAC,KAAK,EAAE,CAAC;QACb,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,uBAAA,IAAI,+BAAM,CAAC,YAAY,EAAE,CAAC,CAAC;IACrD,CAAC;IAEK,kBAAkB,CAAC,OAAO,GAAG,EAAE,6BAA6B,EAAE,IAAI,EAAE;;YACxE,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YAC1C,MAAM,MAAM,GAAG,IAAI,eAAe,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YAE/C,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC;gBAAE,OAAO;YAChC,MAAM,QAAQ,GAAG,MAAM,uBAAA,IAAI,+BAAM,CAAC,sBAAsB,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC;YACzE,uBAAA,IAAI,+BAAa,QAAQ,MAAA,CAAC;YAC1B,gBAAgB,CAAC,uBAAA,IAAI,mCAAU,CAAC,CAAC;YACjC,wDAAwD;YACxD,IAAI,OAAO,CAAC,6BAA6B,EAAE;gBACzC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;gBACtB,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;gBACvB,GAAG,CAAC,MAAM,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC;gBAC/B,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;aAC9B;QACH,CAAC;KAAA;IAED,QAAQ;QACN,OAAO,uBAAA,IAAI,wCAAe,CAAC,gBAAgB;aACxC,KAAK,CAAC,GAAG,CAAC;aACV,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACxD,CAAC;IAED,MAAM;QACJ,IAAI,CAAC,KAAK,EAAE,CAAC;IACf,CAAC;CACF;;IAhDG,OAAO,IAAI,IAAI,CAAC,uBAAA,IAAI,wCAAe,CAAC,CAAC;AACvC,CAAC;IAGC;;;OAGG;IACH,cAAc,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;IACxC,cAAc,CAAC,UAAU,CAAC,oBAAoB,CAAC,CAAC;AAClD,CAAC;AAwCH;;GAEG;AACH,MAAM,UAAU,IAAI,CAAC,aAAgC;IACnD,OAAO,IAAI,iBAAiB,CAAC,aAAa,CAAC,CAAC;AAC9C,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,WAAW,CAAC,aAAgC;IAC1D,OAAO,IAAI,iBAAiB,CAAC,aAAa,CAAC,CAAC;AAC9C,CAAC"}
@@ -0,0 +1,6 @@
1
+ import type { TokenResponse } from "../services/auth";
2
+ import ITokenResponse from "js-pkce/dist/ITokenResponse";
3
+ export declare function addTokenResponse(token: ITokenResponse | TokenResponse): void;
4
+ export declare function getTokenForScope(scope: string): string | null;
5
+ export declare function reset(): void;
6
+ //# sourceMappingURL=consent.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"consent.d.ts","sourceRoot":"","sources":["../../../../../src/lib/core/consent.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAS,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAC7D,OAAO,cAAc,MAAM,6BAA6B,CAAC;AAazD,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,cAAc,GAAG,aAAa,QAKrE;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,iBAM7C;AAED,wBAAgB,KAAK,SAEpB"}
@@ -0,0 +1,27 @@
1
+ import { getStorage } from "./storage";
2
+ function isValidToken(check) {
3
+ const maybe = check;
4
+ return Boolean(maybe.token_type && maybe.access_token);
5
+ }
6
+ function store(token) {
7
+ token.scope.split(" ").forEach((scope) => {
8
+ getStorage().set(scope, token);
9
+ });
10
+ }
11
+ export function addTokenResponse(token) {
12
+ store(token);
13
+ if ("other_tokens" in token) {
14
+ token.other_tokens.forEach(store);
15
+ }
16
+ }
17
+ export function getTokenForScope(scope) {
18
+ const token = getStorage().get(scope);
19
+ if (!token || !isValidToken(token)) {
20
+ return null;
21
+ }
22
+ return `${token.token_type} ${token.access_token}`;
23
+ }
24
+ export function reset() {
25
+ getStorage().clear();
26
+ }
27
+ //# sourceMappingURL=consent.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"consent.js","sourceRoot":"","sources":["../../../../../src/lib/core/consent.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAIvC,SAAS,YAAY,CAAC,KAAc;IAClC,MAAM,KAAK,GAAG,KAAc,CAAC;IAC7B,OAAO,OAAO,CAAC,KAAK,CAAC,UAAU,IAAI,KAAK,CAAC,YAAY,CAAC,CAAC;AACzD,CAAC;AAED,SAAS,KAAK,CAAC,KAAqB;IAClC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;QACvC,UAAU,EAAE,CAAC,GAAG,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IACjC,CAAC,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,KAAqC;IACpE,KAAK,CAAC,KAAK,CAAC,CAAC;IACb,IAAI,cAAc,IAAI,KAAK,EAAE;QAC3B,KAAK,CAAC,YAAY,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;KACnC;AACH,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,KAAa;IAC5C,MAAM,KAAK,GAAG,UAAU,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACtC,IAAI,CAAC,KAAK,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE;QAClC,OAAO,IAAI,CAAC;KACb;IACD,OAAO,GAAG,KAAK,CAAC,UAAU,IAAI,KAAK,CAAC,YAAY,EAAE,CAAC;AACrD,CAAC;AAED,MAAM,UAAU,KAAK;IACnB,UAAU,EAAE,CAAC,KAAK,EAAE,CAAC;AACvB,CAAC"}
@@ -0,0 +1,5 @@
1
+ export declare class EnvironmentConfigurationError extends Error {
2
+ name: string;
3
+ constructor(variable: string, value: any);
4
+ }
5
+ //# sourceMappingURL=errors.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../../../../src/lib/core/errors.ts"],"names":[],"mappings":"AAAA,qBAAa,6BAA8B,SAAQ,KAAK;IAC7C,IAAI,SAAmC;gBACpC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG;CAIzC"}
@@ -0,0 +1,8 @@
1
+ export class EnvironmentConfigurationError extends Error {
2
+ constructor(variable, value) {
3
+ super();
4
+ this.name = 'EnvironmentConfigurationError';
5
+ this.message = `Invalid configuration value provided for ${variable} (${value}).`;
6
+ }
7
+ }
8
+ //# sourceMappingURL=errors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.js","sourceRoot":"","sources":["../../../../../src/lib/core/errors.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,6BAA8B,SAAQ,KAAK;IAEtD,YAAY,QAAgB,EAAE,KAAU;QACtC,KAAK,EAAE,CAAC;QAFD,SAAI,GAAG,+BAA+B,CAAC;QAG9C,IAAI,CAAC,OAAO,GAAG,4CAA4C,QAAQ,KAAK,KAAK,IAAI,CAAC;IACpF,CAAC;CACF"}
@@ -0,0 +1,7 @@
1
+ type GlobusScope = string;
2
+ export type FetchOverrides = (Omit<RequestInit, "headers"> & {
3
+ headers?: Record<string, string>;
4
+ }) | undefined;
5
+ export declare function fetchWithScope(scope: GlobusScope, input: RequestInfo | URL, fetchOverrides?: FetchOverrides): Promise<Response>;
6
+ export {};
7
+ //# sourceMappingURL=fetch.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fetch.d.ts","sourceRoot":"","sources":["../../../../../src/lib/core/fetch.ts"],"names":[],"mappings":"AAGA,KAAK,WAAW,GAAG,MAAM,CAAC;AAE1B,MAAM,MAAM,cAAc,GACtB,CAAC,IAAI,CAAC,WAAW,EAAE,SAAS,CAAC,GAAG;IAC9B,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAClC,CAAC,GACF,SAAS,CAAC;AAEd,wBAAgB,cAAc,CAC5B,KAAK,EAAE,WAAW,EAClB,KAAK,EAAE,WAAW,GAAG,GAAG,EACxB,cAAc,GAAE,cAAmB,qBAiBpC"}
@@ -0,0 +1,17 @@
1
+ import { fetch } from "./internals/fetch";
2
+ import { getTokenForScope } from "./consent";
3
+ export function fetchWithScope(scope, input, fetchOverrides = {}) {
4
+ const headers = fetchOverrides.headers || {};
5
+ /**
6
+ * If an `Authorization` override header was provided, we skip any
7
+ * sort of lookup and use the provided value.
8
+ */
9
+ if (!(headers === null || headers === void 0 ? void 0 : headers["Authorization"])) {
10
+ const token = getTokenForScope(scope);
11
+ if (token) {
12
+ headers["Authorization"] = token;
13
+ }
14
+ }
15
+ return fetch(input, Object.assign(Object.assign({}, fetchOverrides), { headers }));
16
+ }
17
+ //# sourceMappingURL=fetch.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fetch.js","sourceRoot":"","sources":["../../../../../src/lib/core/fetch.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAC1C,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAU7C,MAAM,UAAU,cAAc,CAC5B,KAAkB,EAClB,KAAwB,EACxB,iBAAiC,EAAE;IAEnC,MAAM,OAAO,GAAG,cAAc,CAAC,OAAO,IAAI,EAAE,CAAC;IAC7C;;;OAGG;IACH,IAAI,CAAC,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAG,eAAe,CAAC,CAAA,EAAE;QAC/B,MAAM,KAAK,GAAG,gBAAgB,CAAC,KAAK,CAAC,CAAC;QACtC,IAAI,KAAK,EAAE;YACT,OAAO,CAAC,eAAe,CAAC,GAAG,KAAK,CAAC;SAClC;KACF;IACD,OAAO,KAAK,CAAC,KAAK,kCACb,cAAc,KACjB,OAAO,IACP,CAAC;AACL,CAAC"}
@@ -0,0 +1,38 @@
1
+ /**
2
+ * Handlers for: GLOBUS_SDK_ENVIRONMENT
3
+ */
4
+ export declare const ENVIRONMENTS: {
5
+ readonly PRODUCTION: "production";
6
+ readonly PREVIEW: "preview";
7
+ readonly STAGING: "staging";
8
+ readonly SANDBOX: "sandbox";
9
+ readonly INTEGRATION: "integration";
10
+ readonly TEST: "test";
11
+ };
12
+ export type Environment = (typeof ENVIRONMENTS)[keyof typeof ENVIRONMENTS];
13
+ export declare function getEnvironment(): Environment;
14
+ export declare const SERVICES: {
15
+ AUTH: string;
16
+ TRANSFER: string;
17
+ FLOWS: string;
18
+ GROUPS: string;
19
+ SEARCH: string;
20
+ };
21
+ export type Service = keyof typeof SERVICES;
22
+ export declare const SERVICE_HOSTS: Record<Service, Partial<Record<Environment, string>>>;
23
+ /**
24
+ * Handlers for: GLOBUS_SDK_VERIFY_SSL
25
+ * Since disabling SSL is at least not-recommended, we consider
26
+ * this value to always be true, but provide a warning when it set
27
+ * to one of the falsey values for informational purposes.
28
+ *
29
+ * Taking direction from `globus-sdk-python` for possible false values
30
+ * @see https://github.com/globus/globus-sdk-python/blob/18eced9c12e2ec41745d1be183148845198b999c/src/globus_sdk/config/env_vars.py#L20
31
+ */
32
+ export declare function getVerifySSL(): boolean;
33
+ /**
34
+ * Handlers for: GLOBUS_SDK_HTTP_TIMEOUT
35
+ */
36
+ export declare function getHttpTimeout(): number | null;
37
+ export declare function getServiceBaseUrl(service: Service, environment?: Environment): `https://${string}` | undefined;
38
+ //# sourceMappingURL=global.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"global.d.ts","sourceRoot":"","sources":["../../../../../src/lib/core/global.ts"],"names":[],"mappings":"AAiCA;;GAEG;AACH,eAAO,MAAM,YAAY;;;;;;;CAOf,CAAC;AAEX,MAAM,MAAM,WAAW,GAAG,CAAC,OAAO,YAAY,CAAC,CAAC,MAAM,OAAO,YAAY,CAAC,CAAC;AAE3E,wBAAgB,cAAc,IAAI,WAAW,CAY5C;AAED,eAAO,MAAM,QAAQ;;;;;;CAMpB,CAAC;AAEF,MAAM,MAAM,OAAO,GAAG,MAAM,OAAO,QAAQ,CAAC;AAE5C,eAAO,MAAM,aAAa,EAAE,MAAM,CAChC,OAAO,EACP,OAAO,CAAC,MAAM,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC,CAOrC,CAAC;AAEF;;;;;;;;GAQG;AACH,wBAAgB,YAAY,IAAI,OAAO,CAUtC;AAED;;GAEG;AACH,wBAAgB,cAAc,kBAM7B;AAMD,wBAAgB,iBAAiB,CAC/B,OAAO,EAAE,OAAO,EAChB,WAAW,GAAE,WAA8B,mCAO5C"}
@@ -0,0 +1,92 @@
1
+ import * as AUTH from "../services/auth/config";
2
+ import * as TRANSFER from "../services/transfer/config";
3
+ import * as FLOWS from "../services/flows/config";
4
+ import * as GROUPS from "../services/groups/config";
5
+ import * as SEARCH from "../services/search/config";
6
+ import { EnvironmentConfigurationError } from "./errors";
7
+ function getRuntime() {
8
+ return typeof window !== "undefined" ? window : process;
9
+ }
10
+ function isBrowser(runtime) {
11
+ return typeof window === typeof runtime;
12
+ }
13
+ function env(key, fallback = undefined) {
14
+ const runtime = getRuntime();
15
+ let envConfiguration;
16
+ if (isBrowser(runtime)) {
17
+ envConfiguration = runtime;
18
+ }
19
+ else {
20
+ envConfiguration = runtime.env;
21
+ }
22
+ if (key in envConfiguration) {
23
+ return envConfiguration[key];
24
+ }
25
+ return fallback;
26
+ }
27
+ /**
28
+ * Handlers for: GLOBUS_SDK_ENVIRONMENT
29
+ */
30
+ export const ENVIRONMENTS = {
31
+ PRODUCTION: "production",
32
+ PREVIEW: "preview",
33
+ STAGING: "staging",
34
+ SANDBOX: "sandbox",
35
+ INTEGRATION: "integration",
36
+ TEST: "test",
37
+ };
38
+ export function getEnvironment() {
39
+ const environment = env("GLOBUS_SDK_ENVIRONMENT", ENVIRONMENTS.PRODUCTION);
40
+ if (!environment || !Object.values(ENVIRONMENTS).includes(environment)) {
41
+ throw new EnvironmentConfigurationError("GLOBUS_SDK_ENVIRONMENT", environment);
42
+ }
43
+ return environment;
44
+ }
45
+ export const SERVICES = {
46
+ [AUTH.ID]: AUTH.ID,
47
+ [TRANSFER.ID]: TRANSFER.ID,
48
+ [FLOWS.ID]: FLOWS.ID,
49
+ [GROUPS.ID]: GROUPS.ID,
50
+ [SEARCH.ID]: SEARCH.ID,
51
+ };
52
+ export const SERVICE_HOSTS = {
53
+ [AUTH.ID]: AUTH.HOSTS,
54
+ [TRANSFER.ID]: TRANSFER.HOSTS,
55
+ [FLOWS.ID]: FLOWS.HOSTS,
56
+ [GROUPS.ID]: GROUPS.HOSTS,
57
+ [SEARCH.ID]: SEARCH.HOSTS,
58
+ };
59
+ /**
60
+ * Handlers for: GLOBUS_SDK_VERIFY_SSL
61
+ * Since disabling SSL is at least not-recommended, we consider
62
+ * this value to always be true, but provide a warning when it set
63
+ * to one of the falsey values for informational purposes.
64
+ *
65
+ * Taking direction from `globus-sdk-python` for possible false values
66
+ * @see https://github.com/globus/globus-sdk-python/blob/18eced9c12e2ec41745d1be183148845198b999c/src/globus_sdk/config/env_vars.py#L20
67
+ */
68
+ export function getVerifySSL() {
69
+ const verifySSLTemp = env("GLOBUS_SDK_VERIFY_SSL", "true").toLowerCase();
70
+ if (["n", "no", "f", "false", "off", "0"].includes(verifySSLTemp)) {
71
+ console.warn("Setting GLOBUS_SDK_VERIFY_SSL to false is disallowed in the Globus Javascript SDK. It will always true in this context");
72
+ }
73
+ return true;
74
+ }
75
+ /**
76
+ * Handlers for: GLOBUS_SDK_HTTP_TIMEOUT
77
+ */
78
+ export function getHttpTimeout() {
79
+ const timeout = Number(env("GLOBUS_SDK_HTTP_TIMEOUT", "60"));
80
+ if (timeout === -1) {
81
+ return null;
82
+ }
83
+ return timeout;
84
+ }
85
+ function getServiceHost(service, environment) {
86
+ return SERVICE_HOSTS[service][environment];
87
+ }
88
+ export function getServiceBaseUrl(service, environment = getEnvironment()) {
89
+ const host = getServiceHost(service, environment);
90
+ return env(`GLOBUS_SDK_SERVICE_URL_${service}`, host ? `https://${host}` : undefined);
91
+ }
92
+ //# sourceMappingURL=global.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"global.js","sourceRoot":"","sources":["../../../../../src/lib/core/global.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ declare const actual: typeof import("../fetch");
2
+ //# sourceMappingURL=fetch.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fetch.d.ts","sourceRoot":"","sources":["../../../../../../../src/lib/core/internals/__mocks__/fetch.ts"],"names":[],"mappings":"AAAA,QAAA,MAAM,MAAM,EAAE,cAAc,UAAU,CACN,CAAC"}
@@ -0,0 +1,4 @@
1
+ "use strict";
2
+ const actual = jest.requireActual("../fetch");
3
+ module.exports = Object.assign(Object.assign({}, actual), { fetch: jest.fn().mockResolvedValue({}) });
4
+ //# sourceMappingURL=fetch.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fetch.js","sourceRoot":"","sources":["../../../../../../../src/lib/core/internals/__mocks__/fetch.ts"],"names":[],"mappings":";AAAA,MAAM,MAAM,GACV,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;AAEjC,MAAM,CAAC,OAAO,mCACT,MAAM,KACT,KAAK,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,iBAAiB,CAAC,EAAE,CAAC,GACvC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare const fetch: typeof globalThis.fetch;
2
+ //# sourceMappingURL=fetch.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fetch.d.ts","sourceRoot":"","sources":["../../../../../../src/lib/core/internals/fetch.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,KAAK,yBAAS,CAAC"}
@@ -0,0 +1,3 @@
1
+ import _fetch from "cross-fetch";
2
+ export const fetch = _fetch;
3
+ //# sourceMappingURL=fetch.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fetch.js","sourceRoot":"","sources":["../../../../../../src/lib/core/internals/fetch.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,aAAa,CAAC;AACjC,MAAM,CAAC,MAAM,KAAK,GAAG,MAAM,CAAC"}
@@ -0,0 +1,19 @@
1
+ /**
2
+ * Acts as a basic wrapper for storage layers to make their surface APIs consistent.
3
+ */
4
+ export interface StorageSystem {
5
+ get(key: string): any | undefined;
6
+ set(key: string, value: any): void;
7
+ remove(key: string): void;
8
+ clear(): void;
9
+ }
10
+ type StorageOptions = "localStorage" | "memory" | {
11
+ new (): StorageSystem;
12
+ };
13
+ /**
14
+ * Returns the active storage system or creates an instance for the running process.
15
+ */
16
+ export declare function createStorage(storageType?: StorageOptions): StorageSystem;
17
+ export default createStorage;
18
+ export declare function getStorage(): StorageSystem;
19
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/lib/core/storage/index.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,GAAG,SAAS,CAAC;IAClC,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,GAAG,IAAI,CAAC;IACnC,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,KAAK,IAAI,IAAI,CAAC;CACf;AAGD,KAAK,cAAc,GACf,cAAc,GACd,QAAQ,GACR;IACE,QAAQ,aAAa,CAAC;CACvB,CAAC;AAEN;;GAEG;AACH,wBAAgB,aAAa,CAC3B,WAAW,GAAE,cAAyB,GACrC,aAAa,CAaf;AAED,eAAe,aAAa,CAAC;AAE7B,wBAAgB,UAAU,kBAKzB"}
@@ -0,0 +1,30 @@
1
+ import { MemoryStorage } from "./memory";
2
+ import { LocalStorage } from "./local-storage";
3
+ let storage;
4
+ /**
5
+ * Returns the active storage system or creates an instance for the running process.
6
+ */
7
+ export function createStorage(storageType = "memory") {
8
+ if (!storage) {
9
+ let Factory;
10
+ if (storageType === "localStorage") {
11
+ Factory = LocalStorage;
12
+ }
13
+ else if (storageType === "memory") {
14
+ Factory = MemoryStorage;
15
+ }
16
+ else {
17
+ Factory = storageType;
18
+ }
19
+ storage = new Factory();
20
+ }
21
+ return storage;
22
+ }
23
+ export default createStorage;
24
+ export function getStorage() {
25
+ if (!storage) {
26
+ throw Error("You must create a storage system.");
27
+ }
28
+ return storage;
29
+ }
30
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../src/lib/core/storage/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAW/C,IAAI,OAAkC,CAAC;AAQvC;;GAEG;AACH,MAAM,UAAU,aAAa,CAC3B,cAA8B,QAAQ;IAEtC,IAAI,CAAC,OAAO,EAAE;QACZ,IAAI,OAAO,CAAC;QACZ,IAAI,WAAW,KAAK,cAAc,EAAE;YAClC,OAAO,GAAG,YAAY,CAAC;SACxB;aAAM,IAAI,WAAW,KAAK,QAAQ,EAAE;YACnC,OAAO,GAAG,aAAa,CAAC;SACzB;aAAM;YACL,OAAO,GAAG,WAAW,CAAC;SACvB;QACD,OAAO,GAAG,IAAI,OAAO,EAAE,CAAC;KACzB;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,eAAe,aAAa,CAAC;AAE7B,MAAM,UAAU,UAAU;IACxB,IAAI,CAAC,OAAO,EAAE;QACZ,MAAM,KAAK,CAAC,mCAAmC,CAAC,CAAC;KAClD;IACD,OAAO,OAAO,CAAC;AACjB,CAAC"}
@@ -0,0 +1,8 @@
1
+ import { StorageSystem } from "./index";
2
+ export declare class LocalStorage implements StorageSystem {
3
+ get(key: string): any;
4
+ set(key: string, value: any): void;
5
+ remove(key: string): void;
6
+ clear(): void;
7
+ }
8
+ //# sourceMappingURL=local-storage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"local-storage.d.ts","sourceRoot":"","sources":["../../../../../../src/lib/core/storage/local-storage.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAExC,qBAAa,YAAa,YAAW,aAAa;IAChD,GAAG,CAAC,GAAG,EAAE,MAAM;IAKf,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG;IAI3B,MAAM,CAAC,GAAG,EAAE,MAAM;IAIlB,KAAK;CAGN"}
@@ -0,0 +1,16 @@
1
+ export class LocalStorage {
2
+ get(key) {
3
+ const value = localStorage.getItem(key);
4
+ return value !== null ? JSON.parse(value) : null;
5
+ }
6
+ set(key, value) {
7
+ localStorage.setItem(key, JSON.stringify(value));
8
+ }
9
+ remove(key) {
10
+ localStorage.removeItem(key);
11
+ }
12
+ clear() {
13
+ localStorage.clear();
14
+ }
15
+ }
16
+ //# sourceMappingURL=local-storage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"local-storage.js","sourceRoot":"","sources":["../../../../../../src/lib/core/storage/local-storage.ts"],"names":[],"mappings":"AAEA,MAAM,OAAO,YAAY;IACvB,GAAG,CAAC,GAAW;QACb,MAAM,KAAK,GAAG,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QACxC,OAAO,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IACnD,CAAC;IAED,GAAG,CAAC,GAAW,EAAE,KAAU;QACzB,YAAY,CAAC,OAAO,CAAC,GAAG,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;IACnD,CAAC;IAED,MAAM,CAAC,GAAW;QAChB,YAAY,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;IAC/B,CAAC;IAED,KAAK;QACH,YAAY,CAAC,KAAK,EAAE,CAAC;IACvB,CAAC;CACF"}
@@ -0,0 +1,9 @@
1
+ import type { StorageSystem } from "./index";
2
+ export declare class MemoryStorage implements StorageSystem {
3
+ #private;
4
+ get(key: string): any;
5
+ set(key: string, value: any): void;
6
+ remove(key: string): void;
7
+ clear(): void;
8
+ }
9
+ //# sourceMappingURL=memory.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"memory.d.ts","sourceRoot":"","sources":["../../../../../../src/lib/core/storage/memory.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAE7C,qBAAa,aAAc,YAAW,aAAa;;IAGjD,GAAG,CAAC,GAAG,EAAE,MAAM;IAIf,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG;IAI3B,MAAM,CAAC,GAAG,EAAE,MAAM;IAIlB,KAAK;CAGN"}
@@ -0,0 +1,21 @@
1
+ var _MemoryStorage_cache;
2
+ import { __classPrivateFieldGet, __classPrivateFieldSet } from "tslib";
3
+ export class MemoryStorage {
4
+ constructor() {
5
+ _MemoryStorage_cache.set(this, {});
6
+ }
7
+ get(key) {
8
+ return __classPrivateFieldGet(this, _MemoryStorage_cache, "f")[key];
9
+ }
10
+ set(key, value) {
11
+ __classPrivateFieldGet(this, _MemoryStorage_cache, "f")[key] = value;
12
+ }
13
+ remove(key) {
14
+ delete __classPrivateFieldGet(this, _MemoryStorage_cache, "f")[key];
15
+ }
16
+ clear() {
17
+ __classPrivateFieldSet(this, _MemoryStorage_cache, {}, "f");
18
+ }
19
+ }
20
+ _MemoryStorage_cache = new WeakMap();
21
+ //# sourceMappingURL=memory.js.map