@fluidframework/azure-client 0.56.7 → 0.57.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.
- package/dist/AzureUrlResolver.d.ts.map +1 -1
- package/dist/AzureUrlResolver.js +0 -3
- package/dist/AzureUrlResolver.js.map +1 -1
- package/dist/packageVersion.d.ts +1 -1
- package/dist/packageVersion.js +1 -1
- package/dist/packageVersion.js.map +1 -1
- package/lib/AzureUrlResolver.d.ts.map +1 -1
- package/lib/AzureUrlResolver.js +0 -3
- package/lib/AzureUrlResolver.js.map +1 -1
- package/lib/packageVersion.d.ts +1 -1
- package/lib/packageVersion.js +1 -1
- package/lib/packageVersion.js.map +1 -1
- package/package.json +12 -12
- package/src/AzureUrlResolver.ts +0 -3
- package/src/packageVersion.ts +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AzureUrlResolver.d.ts","sourceRoot":"","sources":["../src/AzureUrlResolver.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,iCAAiC,CAAC;AAC3D,OAAO,EAEH,iBAAiB,EACjB,YAAY,EACZ,YAAY,EACf,MAAM,oCAAoC,CAAC;AAM5C,qBAAa,gBAAiB,YAAW,YAAY;;IAGpC,OAAO,CAAC,OAAO,EAAE,QAAQ,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAyCtD,cAAc,CACvB,WAAW,EAAE,YAAY,EACzB,WAAW,EAAE,MAAM,GACpB,OAAO,CAAC,MAAM,CAAC;CAMrB;
|
|
1
|
+
{"version":3,"file":"AzureUrlResolver.d.ts","sourceRoot":"","sources":["../src/AzureUrlResolver.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,iCAAiC,CAAC;AAC3D,OAAO,EAEH,iBAAiB,EACjB,YAAY,EACZ,YAAY,EACf,MAAM,oCAAoC,CAAC;AAM5C,qBAAa,gBAAiB,YAAW,YAAY;;IAGpC,OAAO,CAAC,OAAO,EAAE,QAAQ,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAyCtD,cAAc,CACvB,WAAW,EAAE,YAAY,EACzB,WAAW,EAAE,MAAM,GACpB,OAAO,CAAC,MAAM,CAAC;CAMrB;AA+BD,eAAO,MAAM,2BAA2B,eACxB,MAAM,cACN,MAAM,YACR,MAAM,KACjB,QAUF,CAAC"}
|
package/dist/AzureUrlResolver.js
CHANGED
|
@@ -61,19 +61,16 @@ function decodeAzureUrl(urlString) {
|
|
|
61
61
|
const ordererUrl = url.origin;
|
|
62
62
|
const searchParams = url.searchParams;
|
|
63
63
|
const storageUrl = searchParams.get("storage");
|
|
64
|
-
// eslint-disable-next-line no-null/no-null
|
|
65
64
|
if (storageUrl === null) {
|
|
66
65
|
throw new Error("Azure URL did not contain a storage URL");
|
|
67
66
|
}
|
|
68
67
|
const tenantId = searchParams.get("tenantId");
|
|
69
|
-
// eslint-disable-next-line no-null/no-null
|
|
70
68
|
if (tenantId === null) {
|
|
71
69
|
throw new Error("Azure URL did not contain a tenant ID");
|
|
72
70
|
}
|
|
73
71
|
const storageUrlDecoded = decodeURIComponent(storageUrl);
|
|
74
72
|
const tenantIdDecoded = decodeURIComponent(tenantId);
|
|
75
73
|
const containerId = searchParams.get("containerId");
|
|
76
|
-
// eslint-disable-next-line no-null/no-null
|
|
77
74
|
const containerIdDecoded = containerId !== null ? decodeURIComponent(containerId) : undefined;
|
|
78
75
|
return {
|
|
79
76
|
ordererUrl,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AzureUrlResolver.js","sourceRoot":"","sources":["../src/AzureUrlResolver.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAGH,2EAK4C;AAE5C,2FAA2F;AAC3F,sFAAsF;AACtF,8FAA8F;AAC9F,2BAA2B;AAC3B,MAAa,gBAAgB;IACzB,gBAAe,CAAC;IAET,KAAK,CAAC,OAAO,CAAC,OAAiB;QAClC,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,QAAQ,EAAE,WAAW,EAAE,GAAG,cAAc,CACpE,OAAO,CAAC,GAAG,CACd,CAAC;QACF,oEAAoE;QACpE,uFAAuF;QACvF,IACI,OAAO,CAAC,OAAO;YACf,OAAO,CAAC,OAAO,CAAC,iCAAY,CAAC,SAAS,CAAC,KAAK,IAAI,EAClD;YACE,OAAO;gBACH,SAAS,EAAE;oBACP,eAAe,EAAE,GAAG,UAAU,WAAW,QAAQ,MAAM;oBACvD,UAAU;oBACV,UAAU,EAAE,GAAG,UAAU,UAAU,QAAQ,EAAE;iBAChD;gBACD,0FAA0F;gBAC1F,EAAE,EAAE,EAAE;gBACN,+EAA+E;gBAC/E,MAAM,EAAE,EAAE;gBACV,IAAI,EAAE,OAAO;gBACb,GAAG,EAAE,GAAG,UAAU,IAAI,QAAQ,MAAM;aACvC,CAAC;SACL;QACD,IAAI,WAAW,KAAK,SAAS,EAAE;YAC3B,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAC;SAC5D;QACD,MAAM,WAAW,GAAG,GAAG,UAAU,IAAI,QAAQ,IAAI,WAAW,EAAE,CAAC;QAC/D,OAAO,OAAO,CAAC,OAAO,CAAC;YACnB,SAAS,EAAE;gBACP,eAAe,EAAE,GAAG,UAAU,WAAW,QAAQ,IAAI,WAAW,EAAE;gBAClE,UAAU;gBACV,UAAU,EAAE,GAAG,UAAU,UAAU,QAAQ,EAAE;aAChD;YACD,EAAE,EAAE,WAAW;YACf,MAAM,EAAE,EAAE;YACV,IAAI,EAAE,OAAO;YACb,GAAG,EAAE,WAAW;SACnB,CAAC,CAAC;IACP,CAAC;IAEM,KAAK,CAAC,cAAc,CACvB,WAAyB,EACzB,WAAmB;QAEnB,IAAI,WAAW,CAAC,IAAI,KAAK,OAAO,EAAE;YAC9B,MAAM,KAAK,CAAC,sBAAsB,CAAC,CAAC;SACvC;QACD,OAAO,GAAG,WAAW,CAAC,GAAG,IAAI,WAAW,EAAE,CAAC;IAC/C,CAAC;CACJ;AArDD,4CAqDC;AAED,SAAS,cAAc,CAAC,SAAiB;IAMrC,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,SAAS,CAAC,CAAC;IAC/B,MAAM,UAAU,GAAG,GAAG,CAAC,MAAM,CAAC;IAC9B,MAAM,YAAY,GAAG,GAAG,CAAC,YAAY,CAAC;IACtC,MAAM,UAAU,GAAG,YAAY,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IAC/C,
|
|
1
|
+
{"version":3,"file":"AzureUrlResolver.js","sourceRoot":"","sources":["../src/AzureUrlResolver.ts"],"names":[],"mappings":"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","sourcesContent":["/*!\n * Copyright (c) Microsoft Corporation and contributors. All rights reserved.\n * Licensed under the MIT License.\n */\n\nimport { IRequest } from \"@fluidframework/core-interfaces\";\nimport {\n DriverHeader,\n IFluidResolvedUrl,\n IResolvedUrl,\n IUrlResolver,\n} from \"@fluidframework/driver-definitions\";\n\n// Implementation of a URL resolver to resolve documents stored using the Azure Fluid Relay\n// based off of the orderer and storage URLs provide. The token provider here can be a\n// InsecureTokenProvider for basic scenarios or more robust, secure providers that fulfill the\n// ITokenProvider interface\nexport class AzureUrlResolver implements IUrlResolver {\n constructor() {}\n\n public async resolve(request: IRequest): Promise<IFluidResolvedUrl> {\n const { ordererUrl, storageUrl, tenantId, containerId } = decodeAzureUrl(\n request.url,\n );\n // determine whether the request is for creating of a new container.\n // such request has the `createNew` header set to true and doesn't have a container ID.\n if (\n request.headers &&\n request.headers[DriverHeader.createNew] === true\n ) {\n return {\n endpoints: {\n deltaStorageUrl: `${ordererUrl}/deltas/${tenantId}/new`,\n ordererUrl,\n storageUrl: `${storageUrl}/repos/${tenantId}`,\n },\n // id is a mandatory attribute, but it's ignored by the driver for new container requests.\n id: \"\",\n // tokens attribute is redundant as all tokens are generated via ITokenProvider\n tokens: {},\n type: \"fluid\",\n url: `${ordererUrl}/${tenantId}/new`,\n };\n }\n if (containerId === undefined) {\n throw new Error(\"Azure URL did not contain containerId\");\n }\n const documentUrl = `${ordererUrl}/${tenantId}/${containerId}`;\n return Promise.resolve({\n endpoints: {\n deltaStorageUrl: `${ordererUrl}/deltas/${tenantId}/${containerId}`,\n ordererUrl,\n storageUrl: `${storageUrl}/repos/${tenantId}`,\n },\n id: containerId,\n tokens: {},\n type: \"fluid\",\n url: documentUrl,\n });\n }\n\n public async getAbsoluteUrl(\n resolvedUrl: IResolvedUrl,\n relativeUrl: string,\n ): Promise<string> {\n if (resolvedUrl.type !== \"fluid\") {\n throw Error(\"Invalid Resolved Url\");\n }\n return `${resolvedUrl.url}/${relativeUrl}`;\n }\n}\n\nfunction decodeAzureUrl(urlString: string): {\n ordererUrl: string;\n storageUrl: string;\n tenantId: string;\n containerId?: string,\n} {\n const url = new URL(urlString);\n const ordererUrl = url.origin;\n const searchParams = url.searchParams;\n const storageUrl = searchParams.get(\"storage\");\n if (storageUrl === null) {\n throw new Error(\"Azure URL did not contain a storage URL\");\n }\n const tenantId = searchParams.get(\"tenantId\");\n if (tenantId === null) {\n throw new Error(\"Azure URL did not contain a tenant ID\");\n }\n const storageUrlDecoded = decodeURIComponent(storageUrl);\n const tenantIdDecoded = decodeURIComponent(tenantId);\n const containerId = searchParams.get(\"containerId\");\n const containerIdDecoded = containerId !== null ? decodeURIComponent(containerId) : undefined;\n return {\n ordererUrl,\n storageUrl: storageUrlDecoded,\n tenantId: tenantIdDecoded,\n containerId: containerIdDecoded,\n };\n}\n\nexport const createAzureCreateNewRequest = (\n ordererUrl: string,\n storageUrl: string,\n tenantId: string,\n): IRequest => {\n const url = new URL(ordererUrl);\n url.searchParams.append(\"storage\", encodeURIComponent(storageUrl));\n url.searchParams.append(\"tenantId\", encodeURIComponent(tenantId));\n return {\n url: url.href,\n headers: {\n [DriverHeader.createNew]: true,\n },\n };\n};\n"]}
|
package/dist/packageVersion.d.ts
CHANGED
|
@@ -5,5 +5,5 @@
|
|
|
5
5
|
* THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY
|
|
6
6
|
*/
|
|
7
7
|
export declare const pkgName = "@fluidframework/azure-client";
|
|
8
|
-
export declare const pkgVersion = "0.
|
|
8
|
+
export declare const pkgVersion = "0.57.1";
|
|
9
9
|
//# sourceMappingURL=packageVersion.d.ts.map
|
package/dist/packageVersion.js
CHANGED
|
@@ -8,5 +8,5 @@
|
|
|
8
8
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
9
|
exports.pkgVersion = exports.pkgName = void 0;
|
|
10
10
|
exports.pkgName = "@fluidframework/azure-client";
|
|
11
|
-
exports.pkgVersion = "0.
|
|
11
|
+
exports.pkgVersion = "0.57.1";
|
|
12
12
|
//# sourceMappingURL=packageVersion.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"packageVersion.js","sourceRoot":"","sources":["../src/packageVersion.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAEU,QAAA,OAAO,GAAG,8BAA8B,CAAC;AACzC,QAAA,UAAU,GAAG,QAAQ,CAAC","sourcesContent":["/*!\n * Copyright (c) Microsoft Corporation and contributors. All rights reserved.\n * Licensed under the MIT License.\n *\n * THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY\n */\n\nexport const pkgName = \"@fluidframework/azure-client\";\nexport const pkgVersion = \"0.
|
|
1
|
+
{"version":3,"file":"packageVersion.js","sourceRoot":"","sources":["../src/packageVersion.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAEU,QAAA,OAAO,GAAG,8BAA8B,CAAC;AACzC,QAAA,UAAU,GAAG,QAAQ,CAAC","sourcesContent":["/*!\n * Copyright (c) Microsoft Corporation and contributors. All rights reserved.\n * Licensed under the MIT License.\n *\n * THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY\n */\n\nexport const pkgName = \"@fluidframework/azure-client\";\nexport const pkgVersion = \"0.57.1\";\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AzureUrlResolver.d.ts","sourceRoot":"","sources":["../src/AzureUrlResolver.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,iCAAiC,CAAC;AAC3D,OAAO,EAEH,iBAAiB,EACjB,YAAY,EACZ,YAAY,EACf,MAAM,oCAAoC,CAAC;AAM5C,qBAAa,gBAAiB,YAAW,YAAY;;IAGpC,OAAO,CAAC,OAAO,EAAE,QAAQ,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAyCtD,cAAc,CACvB,WAAW,EAAE,YAAY,EACzB,WAAW,EAAE,MAAM,GACpB,OAAO,CAAC,MAAM,CAAC;CAMrB;
|
|
1
|
+
{"version":3,"file":"AzureUrlResolver.d.ts","sourceRoot":"","sources":["../src/AzureUrlResolver.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,iCAAiC,CAAC;AAC3D,OAAO,EAEH,iBAAiB,EACjB,YAAY,EACZ,YAAY,EACf,MAAM,oCAAoC,CAAC;AAM5C,qBAAa,gBAAiB,YAAW,YAAY;;IAGpC,OAAO,CAAC,OAAO,EAAE,QAAQ,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAyCtD,cAAc,CACvB,WAAW,EAAE,YAAY,EACzB,WAAW,EAAE,MAAM,GACpB,OAAO,CAAC,MAAM,CAAC;CAMrB;AA+BD,eAAO,MAAM,2BAA2B,eACxB,MAAM,cACN,MAAM,YACR,MAAM,KACjB,QAUF,CAAC"}
|
package/lib/AzureUrlResolver.js
CHANGED
|
@@ -57,19 +57,16 @@ function decodeAzureUrl(urlString) {
|
|
|
57
57
|
const ordererUrl = url.origin;
|
|
58
58
|
const searchParams = url.searchParams;
|
|
59
59
|
const storageUrl = searchParams.get("storage");
|
|
60
|
-
// eslint-disable-next-line no-null/no-null
|
|
61
60
|
if (storageUrl === null) {
|
|
62
61
|
throw new Error("Azure URL did not contain a storage URL");
|
|
63
62
|
}
|
|
64
63
|
const tenantId = searchParams.get("tenantId");
|
|
65
|
-
// eslint-disable-next-line no-null/no-null
|
|
66
64
|
if (tenantId === null) {
|
|
67
65
|
throw new Error("Azure URL did not contain a tenant ID");
|
|
68
66
|
}
|
|
69
67
|
const storageUrlDecoded = decodeURIComponent(storageUrl);
|
|
70
68
|
const tenantIdDecoded = decodeURIComponent(tenantId);
|
|
71
69
|
const containerId = searchParams.get("containerId");
|
|
72
|
-
// eslint-disable-next-line no-null/no-null
|
|
73
70
|
const containerIdDecoded = containerId !== null ? decodeURIComponent(containerId) : undefined;
|
|
74
71
|
return {
|
|
75
72
|
ordererUrl,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AzureUrlResolver.js","sourceRoot":"","sources":["../src/AzureUrlResolver.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EACH,YAAY,GAIf,MAAM,oCAAoC,CAAC;AAE5C,2FAA2F;AAC3F,sFAAsF;AACtF,8FAA8F;AAC9F,2BAA2B;AAC3B,MAAM,OAAO,gBAAgB;IACzB,gBAAe,CAAC;IAET,KAAK,CAAC,OAAO,CAAC,OAAiB;QAClC,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,QAAQ,EAAE,WAAW,EAAE,GAAG,cAAc,CACpE,OAAO,CAAC,GAAG,CACd,CAAC;QACF,oEAAoE;QACpE,uFAAuF;QACvF,IACI,OAAO,CAAC,OAAO;YACf,OAAO,CAAC,OAAO,CAAC,YAAY,CAAC,SAAS,CAAC,KAAK,IAAI,EAClD;YACE,OAAO;gBACH,SAAS,EAAE;oBACP,eAAe,EAAE,GAAG,UAAU,WAAW,QAAQ,MAAM;oBACvD,UAAU;oBACV,UAAU,EAAE,GAAG,UAAU,UAAU,QAAQ,EAAE;iBAChD;gBACD,0FAA0F;gBAC1F,EAAE,EAAE,EAAE;gBACN,+EAA+E;gBAC/E,MAAM,EAAE,EAAE;gBACV,IAAI,EAAE,OAAO;gBACb,GAAG,EAAE,GAAG,UAAU,IAAI,QAAQ,MAAM;aACvC,CAAC;SACL;QACD,IAAI,WAAW,KAAK,SAAS,EAAE;YAC3B,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAC;SAC5D;QACD,MAAM,WAAW,GAAG,GAAG,UAAU,IAAI,QAAQ,IAAI,WAAW,EAAE,CAAC;QAC/D,OAAO,OAAO,CAAC,OAAO,CAAC;YACnB,SAAS,EAAE;gBACP,eAAe,EAAE,GAAG,UAAU,WAAW,QAAQ,IAAI,WAAW,EAAE;gBAClE,UAAU;gBACV,UAAU,EAAE,GAAG,UAAU,UAAU,QAAQ,EAAE;aAChD;YACD,EAAE,EAAE,WAAW;YACf,MAAM,EAAE,EAAE;YACV,IAAI,EAAE,OAAO;YACb,GAAG,EAAE,WAAW;SACnB,CAAC,CAAC;IACP,CAAC;IAEM,KAAK,CAAC,cAAc,CACvB,WAAyB,EACzB,WAAmB;QAEnB,IAAI,WAAW,CAAC,IAAI,KAAK,OAAO,EAAE;YAC9B,MAAM,KAAK,CAAC,sBAAsB,CAAC,CAAC;SACvC;QACD,OAAO,GAAG,WAAW,CAAC,GAAG,IAAI,WAAW,EAAE,CAAC;IAC/C,CAAC;CACJ;AAED,SAAS,cAAc,CAAC,SAAiB;IAMrC,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,SAAS,CAAC,CAAC;IAC/B,MAAM,UAAU,GAAG,GAAG,CAAC,MAAM,CAAC;IAC9B,MAAM,YAAY,GAAG,GAAG,CAAC,YAAY,CAAC;IACtC,MAAM,UAAU,GAAG,YAAY,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IAC/C,
|
|
1
|
+
{"version":3,"file":"AzureUrlResolver.js","sourceRoot":"","sources":["../src/AzureUrlResolver.ts"],"names":[],"mappings":"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","sourcesContent":["/*!\n * Copyright (c) Microsoft Corporation and contributors. All rights reserved.\n * Licensed under the MIT License.\n */\n\nimport { IRequest } from \"@fluidframework/core-interfaces\";\nimport {\n DriverHeader,\n IFluidResolvedUrl,\n IResolvedUrl,\n IUrlResolver,\n} from \"@fluidframework/driver-definitions\";\n\n// Implementation of a URL resolver to resolve documents stored using the Azure Fluid Relay\n// based off of the orderer and storage URLs provide. The token provider here can be a\n// InsecureTokenProvider for basic scenarios or more robust, secure providers that fulfill the\n// ITokenProvider interface\nexport class AzureUrlResolver implements IUrlResolver {\n constructor() {}\n\n public async resolve(request: IRequest): Promise<IFluidResolvedUrl> {\n const { ordererUrl, storageUrl, tenantId, containerId } = decodeAzureUrl(\n request.url,\n );\n // determine whether the request is for creating of a new container.\n // such request has the `createNew` header set to true and doesn't have a container ID.\n if (\n request.headers &&\n request.headers[DriverHeader.createNew] === true\n ) {\n return {\n endpoints: {\n deltaStorageUrl: `${ordererUrl}/deltas/${tenantId}/new`,\n ordererUrl,\n storageUrl: `${storageUrl}/repos/${tenantId}`,\n },\n // id is a mandatory attribute, but it's ignored by the driver for new container requests.\n id: \"\",\n // tokens attribute is redundant as all tokens are generated via ITokenProvider\n tokens: {},\n type: \"fluid\",\n url: `${ordererUrl}/${tenantId}/new`,\n };\n }\n if (containerId === undefined) {\n throw new Error(\"Azure URL did not contain containerId\");\n }\n const documentUrl = `${ordererUrl}/${tenantId}/${containerId}`;\n return Promise.resolve({\n endpoints: {\n deltaStorageUrl: `${ordererUrl}/deltas/${tenantId}/${containerId}`,\n ordererUrl,\n storageUrl: `${storageUrl}/repos/${tenantId}`,\n },\n id: containerId,\n tokens: {},\n type: \"fluid\",\n url: documentUrl,\n });\n }\n\n public async getAbsoluteUrl(\n resolvedUrl: IResolvedUrl,\n relativeUrl: string,\n ): Promise<string> {\n if (resolvedUrl.type !== \"fluid\") {\n throw Error(\"Invalid Resolved Url\");\n }\n return `${resolvedUrl.url}/${relativeUrl}`;\n }\n}\n\nfunction decodeAzureUrl(urlString: string): {\n ordererUrl: string;\n storageUrl: string;\n tenantId: string;\n containerId?: string,\n} {\n const url = new URL(urlString);\n const ordererUrl = url.origin;\n const searchParams = url.searchParams;\n const storageUrl = searchParams.get(\"storage\");\n if (storageUrl === null) {\n throw new Error(\"Azure URL did not contain a storage URL\");\n }\n const tenantId = searchParams.get(\"tenantId\");\n if (tenantId === null) {\n throw new Error(\"Azure URL did not contain a tenant ID\");\n }\n const storageUrlDecoded = decodeURIComponent(storageUrl);\n const tenantIdDecoded = decodeURIComponent(tenantId);\n const containerId = searchParams.get(\"containerId\");\n const containerIdDecoded = containerId !== null ? decodeURIComponent(containerId) : undefined;\n return {\n ordererUrl,\n storageUrl: storageUrlDecoded,\n tenantId: tenantIdDecoded,\n containerId: containerIdDecoded,\n };\n}\n\nexport const createAzureCreateNewRequest = (\n ordererUrl: string,\n storageUrl: string,\n tenantId: string,\n): IRequest => {\n const url = new URL(ordererUrl);\n url.searchParams.append(\"storage\", encodeURIComponent(storageUrl));\n url.searchParams.append(\"tenantId\", encodeURIComponent(tenantId));\n return {\n url: url.href,\n headers: {\n [DriverHeader.createNew]: true,\n },\n };\n};\n"]}
|
package/lib/packageVersion.d.ts
CHANGED
|
@@ -5,5 +5,5 @@
|
|
|
5
5
|
* THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY
|
|
6
6
|
*/
|
|
7
7
|
export declare const pkgName = "@fluidframework/azure-client";
|
|
8
|
-
export declare const pkgVersion = "0.
|
|
8
|
+
export declare const pkgVersion = "0.57.1";
|
|
9
9
|
//# sourceMappingURL=packageVersion.d.ts.map
|
package/lib/packageVersion.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"packageVersion.js","sourceRoot":"","sources":["../src/packageVersion.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,MAAM,CAAC,MAAM,OAAO,GAAG,8BAA8B,CAAC;AACtD,MAAM,CAAC,MAAM,UAAU,GAAG,QAAQ,CAAC","sourcesContent":["/*!\n * Copyright (c) Microsoft Corporation and contributors. All rights reserved.\n * Licensed under the MIT License.\n *\n * THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY\n */\n\nexport const pkgName = \"@fluidframework/azure-client\";\nexport const pkgVersion = \"0.
|
|
1
|
+
{"version":3,"file":"packageVersion.js","sourceRoot":"","sources":["../src/packageVersion.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,MAAM,CAAC,MAAM,OAAO,GAAG,8BAA8B,CAAC;AACtD,MAAM,CAAC,MAAM,UAAU,GAAG,QAAQ,CAAC","sourcesContent":["/*!\n * Copyright (c) Microsoft Corporation and contributors. All rights reserved.\n * Licensed under the MIT License.\n *\n * THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY\n */\n\nexport const pkgName = \"@fluidframework/azure-client\";\nexport const pkgVersion = \"0.57.1\";\n"]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@fluidframework/azure-client",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.57.1",
|
|
4
4
|
"description": "A tool to enable creation and loading of Fluid containers using the Azure Fluid Relay service",
|
|
5
5
|
"homepage": "https://fluidframework.com",
|
|
6
6
|
"repository": "https://github.com/microsoft/FluidFramework",
|
|
@@ -38,26 +38,26 @@
|
|
|
38
38
|
},
|
|
39
39
|
"dependencies": {
|
|
40
40
|
"@fluidframework/common-definitions": "^0.20.1",
|
|
41
|
-
"@fluidframework/container-definitions": "^0.
|
|
42
|
-
"@fluidframework/container-loader": "^0.
|
|
41
|
+
"@fluidframework/container-definitions": "^0.46.0",
|
|
42
|
+
"@fluidframework/container-loader": "^0.57.1",
|
|
43
43
|
"@fluidframework/core-interfaces": "^0.42.0",
|
|
44
44
|
"@fluidframework/driver-definitions": "^0.44.0",
|
|
45
|
-
"@fluidframework/driver-utils": "^0.
|
|
46
|
-
"@fluidframework/fluid-static": "^0.
|
|
47
|
-
"@fluidframework/map": "^0.
|
|
45
|
+
"@fluidframework/driver-utils": "^0.57.1",
|
|
46
|
+
"@fluidframework/fluid-static": "^0.57.1",
|
|
47
|
+
"@fluidframework/map": "^0.57.1",
|
|
48
48
|
"@fluidframework/protocol-definitions": "^0.1026.0",
|
|
49
|
-
"@fluidframework/routerlicious-driver": "^0.
|
|
50
|
-
"@fluidframework/runtime-utils": "^0.
|
|
49
|
+
"@fluidframework/routerlicious-driver": "^0.57.1",
|
|
50
|
+
"@fluidframework/runtime-utils": "^0.57.1",
|
|
51
51
|
"@fluidframework/server-services-client": "^0.1034.0",
|
|
52
52
|
"axios": "^0.21.2",
|
|
53
53
|
"uuid": "^8.3.1"
|
|
54
54
|
},
|
|
55
55
|
"devDependencies": {
|
|
56
|
-
"@fluidframework/aqueduct": "^0.
|
|
56
|
+
"@fluidframework/aqueduct": "^0.57.1",
|
|
57
57
|
"@fluidframework/azure-local-service": "^0.1.38773",
|
|
58
58
|
"@fluidframework/build-common": "^0.23.0",
|
|
59
|
-
"@fluidframework/eslint-config-fluid": "^0.
|
|
60
|
-
"@fluidframework/test-client-utils": "^0.
|
|
59
|
+
"@fluidframework/eslint-config-fluid": "^0.26.0",
|
|
60
|
+
"@fluidframework/test-client-utils": "^0.57.1",
|
|
61
61
|
"@microsoft/api-extractor": "^7.16.1",
|
|
62
62
|
"@rushstack/eslint-config": "^2.5.1",
|
|
63
63
|
"@types/mocha": "^8.2.2",
|
|
@@ -71,6 +71,6 @@
|
|
|
71
71
|
"typescript": "~4.1.3"
|
|
72
72
|
},
|
|
73
73
|
"peerDependencies": {
|
|
74
|
-
"fluid-framework": "^0.
|
|
74
|
+
"fluid-framework": "^0.57.0"
|
|
75
75
|
}
|
|
76
76
|
}
|
package/src/AzureUrlResolver.ts
CHANGED
|
@@ -80,19 +80,16 @@ function decodeAzureUrl(urlString: string): {
|
|
|
80
80
|
const ordererUrl = url.origin;
|
|
81
81
|
const searchParams = url.searchParams;
|
|
82
82
|
const storageUrl = searchParams.get("storage");
|
|
83
|
-
// eslint-disable-next-line no-null/no-null
|
|
84
83
|
if (storageUrl === null) {
|
|
85
84
|
throw new Error("Azure URL did not contain a storage URL");
|
|
86
85
|
}
|
|
87
86
|
const tenantId = searchParams.get("tenantId");
|
|
88
|
-
// eslint-disable-next-line no-null/no-null
|
|
89
87
|
if (tenantId === null) {
|
|
90
88
|
throw new Error("Azure URL did not contain a tenant ID");
|
|
91
89
|
}
|
|
92
90
|
const storageUrlDecoded = decodeURIComponent(storageUrl);
|
|
93
91
|
const tenantIdDecoded = decodeURIComponent(tenantId);
|
|
94
92
|
const containerId = searchParams.get("containerId");
|
|
95
|
-
// eslint-disable-next-line no-null/no-null
|
|
96
93
|
const containerIdDecoded = containerId !== null ? decodeURIComponent(containerId) : undefined;
|
|
97
94
|
return {
|
|
98
95
|
ordererUrl,
|
package/src/packageVersion.ts
CHANGED