@fluidframework/routerlicious-urlresolver 1.4.0-115997 → 2.0.0-dev-rc.1.0.0.224419
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/.eslintrc.js +29 -32
- package/.mocharc.js +12 -0
- package/CHANGELOG.md +117 -0
- package/README.md +37 -1
- package/api-extractor-lint.json +4 -0
- package/api-extractor.json +4 -0
- package/api-report/routerlicious-urlresolver.api.md +47 -0
- package/dist/index.cjs +10 -0
- package/dist/index.cjs.map +1 -0
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/routerlicious-urlresolver-alpha.d.ts +13 -0
- package/dist/routerlicious-urlresolver-beta.d.ts +17 -0
- package/dist/routerlicious-urlresolver-public.d.ts +17 -0
- package/dist/routerlicious-urlresolver-untrimmed.d.ts +44 -0
- package/dist/tsdoc-metadata.json +11 -0
- package/dist/{urlResolver.js → urlResolver.cjs} +20 -15
- package/dist/urlResolver.cjs.map +1 -0
- package/dist/urlResolver.d.ts +9 -0
- package/dist/urlResolver.d.ts.map +1 -1
- package/lib/index.d.mts +6 -0
- package/lib/index.d.mts.map +1 -0
- package/lib/{index.js → index.mjs} +2 -2
- package/lib/index.mjs.map +1 -0
- package/lib/routerlicious-urlresolver-alpha.d.mts +13 -0
- package/lib/routerlicious-urlresolver-beta.d.mts +17 -0
- package/lib/routerlicious-urlresolver-public.d.mts +17 -0
- package/lib/routerlicious-urlresolver-untrimmed.d.mts +44 -0
- package/lib/{urlResolver.d.ts → urlResolver.d.mts} +9 -0
- package/lib/urlResolver.d.mts.map +1 -0
- package/lib/{urlResolver.js → urlResolver.mjs} +17 -12
- package/lib/urlResolver.mjs.map +1 -0
- package/package.json +83 -47
- package/{lib/index.d.ts → prettier.config.cjs} +4 -2
- package/src/index.ts +1 -1
- package/src/urlResolver.ts +158 -143
- package/tsc-multi.test.json +4 -0
- package/tsconfig.json +12 -16
- package/dist/index.js +0 -18
- package/dist/index.js.map +0 -1
- package/dist/packageVersion.d.ts +0 -9
- package/dist/packageVersion.d.ts.map +0 -1
- package/dist/packageVersion.js +0 -12
- package/dist/packageVersion.js.map +0 -1
- package/dist/urlResolver.js.map +0 -1
- package/lib/index.d.ts.map +0 -1
- package/lib/index.js.map +0 -1
- package/lib/packageVersion.d.ts +0 -9
- package/lib/packageVersion.d.ts.map +0 -1
- package/lib/packageVersion.js +0 -9
- package/lib/packageVersion.js.map +0 -1
- package/lib/urlResolver.d.ts.map +0 -1
- package/lib/urlResolver.js.map +0 -1
- package/src/packageVersion.ts +0 -9
- package/tsconfig.esnext.json +0 -7
package/.eslintrc.js
CHANGED
|
@@ -4,37 +4,34 @@
|
|
|
4
4
|
*/
|
|
5
5
|
|
|
6
6
|
module.exports = {
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
7
|
+
extends: [require.resolve("@fluidframework/eslint-config-fluid/minimal"), "prettier"],
|
|
8
|
+
parserOptions: {
|
|
9
|
+
project: ["./tsconfig.json", "./src/test/tsconfig.json"],
|
|
10
|
+
},
|
|
11
|
+
rules: {
|
|
12
|
+
"@typescript-eslint/strict-boolean-expressions": "off",
|
|
13
|
+
"unicorn/filename-case": [
|
|
14
|
+
"error",
|
|
15
|
+
{
|
|
16
|
+
cases: {
|
|
17
|
+
camelCase: true,
|
|
18
|
+
pascalCase: true,
|
|
19
|
+
},
|
|
20
|
+
ignore: [/.*routerlicious-urlResolver\.spec\.ts/],
|
|
21
|
+
},
|
|
22
|
+
],
|
|
23
23
|
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
},
|
|
38
|
-
},
|
|
39
|
-
],
|
|
24
|
+
// This library is used in the browser, so we don't want dependencies on most node libraries.
|
|
25
|
+
"import/no-nodejs-modules": ["error", { allow: ["url"] }],
|
|
26
|
+
},
|
|
27
|
+
overrides: [
|
|
28
|
+
{
|
|
29
|
+
// Rules only for test files
|
|
30
|
+
files: ["*.spec.ts", "src/test/**"],
|
|
31
|
+
rules: {
|
|
32
|
+
// Test files are run in node only so additional node libraries can be used.
|
|
33
|
+
"import/no-nodejs-modules": ["error", { allow: ["assert"] }],
|
|
34
|
+
},
|
|
35
|
+
},
|
|
36
|
+
],
|
|
40
37
|
};
|
package/.mocharc.js
ADDED
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* Copyright (c) Microsoft Corporation and contributors. All rights reserved.
|
|
3
|
+
* Licensed under the MIT License.
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
"use strict";
|
|
7
|
+
|
|
8
|
+
const getFluidTestMochaConfig = require("@fluidframework/mocha-test-setup/mocharc-common");
|
|
9
|
+
|
|
10
|
+
const packageDir = __dirname;
|
|
11
|
+
const config = getFluidTestMochaConfig(packageDir);
|
|
12
|
+
module.exports = config;
|
package/CHANGELOG.md
ADDED
|
@@ -0,0 +1,117 @@
|
|
|
1
|
+
# @fluidframework/routerlicious-urlresolver
|
|
2
|
+
|
|
3
|
+
## 2.0.0-internal.8.0.0
|
|
4
|
+
|
|
5
|
+
Dependency updates only.
|
|
6
|
+
|
|
7
|
+
## 2.0.0-internal.7.4.0
|
|
8
|
+
|
|
9
|
+
Dependency updates only.
|
|
10
|
+
|
|
11
|
+
## 2.0.0-internal.7.3.0
|
|
12
|
+
|
|
13
|
+
Dependency updates only.
|
|
14
|
+
|
|
15
|
+
## 2.0.0-internal.7.2.0
|
|
16
|
+
|
|
17
|
+
Dependency updates only.
|
|
18
|
+
|
|
19
|
+
## 2.0.0-internal.7.1.0
|
|
20
|
+
|
|
21
|
+
Dependency updates only.
|
|
22
|
+
|
|
23
|
+
## 2.0.0-internal.7.0.0
|
|
24
|
+
|
|
25
|
+
### Major Changes
|
|
26
|
+
|
|
27
|
+
- Dependencies on @fluidframework/protocol-definitions package updated to 3.0.0 [871b3493dd](https://github.com/microsoft/FluidFramework/commits/871b3493dd0d7ea3a89be64998ceb6cb9021a04e)
|
|
28
|
+
|
|
29
|
+
This included the following changes from the protocol-definitions release:
|
|
30
|
+
|
|
31
|
+
- Updating signal interfaces for some planned improvements. The intention is split the interface between signals
|
|
32
|
+
submitted by clients to the server and the resulting signals sent from the server to clients.
|
|
33
|
+
- A new optional type member is available on the ISignalMessage interface and a new ISentSignalMessage interface has
|
|
34
|
+
been added, which will be the typing for signals sent from the client to the server. Both extend a new
|
|
35
|
+
ISignalMessageBase interface that contains common members.
|
|
36
|
+
- The @fluidframework/common-definitions package dependency has been updated to version 1.0.0.
|
|
37
|
+
|
|
38
|
+
- Server upgrade: dependencies on Fluid server packages updated to 2.0.1 [871b3493dd](https://github.com/microsoft/FluidFramework/commits/871b3493dd0d7ea3a89be64998ceb6cb9021a04e)
|
|
39
|
+
|
|
40
|
+
Dependencies on the following Fluid server package have been updated to version 2.0.1:
|
|
41
|
+
|
|
42
|
+
- @fluidframework/gitresources: 2.0.1
|
|
43
|
+
- @fluidframework/server-kafka-orderer: 2.0.1
|
|
44
|
+
- @fluidframework/server-lambdas: 2.0.1
|
|
45
|
+
- @fluidframework/server-lambdas-driver: 2.0.1
|
|
46
|
+
- @fluidframework/server-local-server: 2.0.1
|
|
47
|
+
- @fluidframework/server-memory-orderer: 2.0.1
|
|
48
|
+
- @fluidframework/protocol-base: 2.0.1
|
|
49
|
+
- @fluidframework/server-routerlicious: 2.0.1
|
|
50
|
+
- @fluidframework/server-routerlicious-base: 2.0.1
|
|
51
|
+
- @fluidframework/server-services: 2.0.1
|
|
52
|
+
- @fluidframework/server-services-client: 2.0.1
|
|
53
|
+
- @fluidframework/server-services-core: 2.0.1
|
|
54
|
+
- @fluidframework/server-services-ordering-kafkanode: 2.0.1
|
|
55
|
+
- @fluidframework/server-services-ordering-rdkafka: 2.0.1
|
|
56
|
+
- @fluidframework/server-services-ordering-zookeeper: 2.0.1
|
|
57
|
+
- @fluidframework/server-services-shared: 2.0.1
|
|
58
|
+
- @fluidframework/server-services-telemetry: 2.0.1
|
|
59
|
+
- @fluidframework/server-services-utils: 2.0.1
|
|
60
|
+
- @fluidframework/server-test-utils: 2.0.1
|
|
61
|
+
- tinylicious: 2.0.1
|
|
62
|
+
|
|
63
|
+
- Minimum TypeScript version now 5.1.6 [871b3493dd](https://github.com/microsoft/FluidFramework/commits/871b3493dd0d7ea3a89be64998ceb6cb9021a04e)
|
|
64
|
+
|
|
65
|
+
The minimum supported TypeScript version for Fluid 2.0 clients is now 5.1.6.
|
|
66
|
+
|
|
67
|
+
## 2.0.0-internal.6.4.0
|
|
68
|
+
|
|
69
|
+
Dependency updates only.
|
|
70
|
+
|
|
71
|
+
## 2.0.0-internal.6.3.0
|
|
72
|
+
|
|
73
|
+
Dependency updates only.
|
|
74
|
+
|
|
75
|
+
## 2.0.0-internal.6.2.0
|
|
76
|
+
|
|
77
|
+
Dependency updates only.
|
|
78
|
+
|
|
79
|
+
## 2.0.0-internal.6.1.0
|
|
80
|
+
|
|
81
|
+
Dependency updates only.
|
|
82
|
+
|
|
83
|
+
## 2.0.0-internal.6.0.0
|
|
84
|
+
|
|
85
|
+
### Major Changes
|
|
86
|
+
|
|
87
|
+
- Upgraded typescript transpilation target to ES2020 [8abce8cdb4](https://github.com/microsoft/FluidFramework/commits/8abce8cdb4e2832fb6405fb44e393bef03d5648a)
|
|
88
|
+
|
|
89
|
+
Upgraded typescript transpilation target to ES2020. This is done in order to decrease the bundle sizes of Fluid Framework packages. This has provided size improvements across the board for ex. Loader, Driver, Runtime etc. Reduced bundle sizes helps to load lesser code in apps and hence also helps to improve the perf.If any app wants to target any older versions of browsers with which this target version is not compatible, then they can use packages like babel to transpile to a older target.
|
|
90
|
+
|
|
91
|
+
## 2.0.0-internal.5.4.0
|
|
92
|
+
|
|
93
|
+
Dependency updates only.
|
|
94
|
+
|
|
95
|
+
## 2.0.0-internal.5.3.0
|
|
96
|
+
|
|
97
|
+
Dependency updates only.
|
|
98
|
+
|
|
99
|
+
## 2.0.0-internal.5.2.0
|
|
100
|
+
|
|
101
|
+
Dependency updates only.
|
|
102
|
+
|
|
103
|
+
## 2.0.0-internal.5.1.0
|
|
104
|
+
|
|
105
|
+
Dependency updates only.
|
|
106
|
+
|
|
107
|
+
## 2.0.0-internal.5.0.0
|
|
108
|
+
|
|
109
|
+
Dependency updates only.
|
|
110
|
+
|
|
111
|
+
## 2.0.0-internal.4.4.0
|
|
112
|
+
|
|
113
|
+
Dependency updates only.
|
|
114
|
+
|
|
115
|
+
## 2.0.0-internal.4.1.0
|
|
116
|
+
|
|
117
|
+
Dependency updates only.
|
package/README.md
CHANGED
|
@@ -2,4 +2,40 @@
|
|
|
2
2
|
|
|
3
3
|
This is an implementation of a url resolver which resolves routerlicious and localhost URLs.
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
<!-- AUTO-GENERATED-CONTENT:START (README_DEPENDENCY_GUIDELINES_SECTION:includeHeading=TRUE) -->
|
|
6
|
+
|
|
7
|
+
<!-- prettier-ignore-start -->
|
|
8
|
+
<!-- NOTE: This section is automatically generated using @fluid-tools/markdown-magic. Do not update these generated contents directly. -->
|
|
9
|
+
|
|
10
|
+
## Using Fluid Framework libraries
|
|
11
|
+
|
|
12
|
+
When taking a dependency on a Fluid Framework library, we recommend using a `^` (caret) version range, such as `^1.3.4`.
|
|
13
|
+
While Fluid Framework libraries may use different ranges with interdependencies between other Fluid Framework libraries,
|
|
14
|
+
library consumers should always prefer `^`.
|
|
15
|
+
|
|
16
|
+
Note that when depending on a library version of the form `2.0.0-internal.x.y.z`, called the Fluid internal version scheme,
|
|
17
|
+
you must use a `>= <` dependency range (such as `>=2.0.0-internal.x.y.z <2.0.0-internal.w.0.0` where `w` is `x+1`).
|
|
18
|
+
Standard `^` and `~` ranges will not work as expected.
|
|
19
|
+
See the [@fluid-tools/version-tools](https://github.com/microsoft/FluidFramework/blob/main/build-tools/packages/version-tools/README.md)
|
|
20
|
+
package for more information including tools to convert between version schemes.
|
|
21
|
+
|
|
22
|
+
<!-- prettier-ignore-end -->
|
|
23
|
+
|
|
24
|
+
<!-- AUTO-GENERATED-CONTENT:END -->
|
|
25
|
+
|
|
26
|
+
<!-- AUTO-GENERATED-CONTENT:START (README_TRADEMARK_SECTION:includeHeading=TRUE) -->
|
|
27
|
+
|
|
28
|
+
<!-- prettier-ignore-start -->
|
|
29
|
+
<!-- NOTE: This section is automatically generated using @fluid-tools/markdown-magic. Do not update these generated contents directly. -->
|
|
30
|
+
|
|
31
|
+
## Trademark
|
|
32
|
+
|
|
33
|
+
This project may contain Microsoft trademarks or logos for Microsoft projects, products, or services.
|
|
34
|
+
|
|
35
|
+
Use of these trademarks or logos must follow Microsoft's [Trademark & Brand Guidelines](https://www.microsoft.com/en-us/legal/intellectualproperty/trademarks/usage/general).
|
|
36
|
+
|
|
37
|
+
Use of Microsoft trademarks or logos in modified versions of this project must not cause confusion or imply Microsoft sponsorship.
|
|
38
|
+
|
|
39
|
+
<!-- prettier-ignore-end -->
|
|
40
|
+
|
|
41
|
+
<!-- AUTO-GENERATED-CONTENT:END -->
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
## API Report File for "@fluidframework/routerlicious-urlresolver"
|
|
2
|
+
|
|
3
|
+
> Do not edit this file. It is a report generated by [API Extractor](https://api-extractor.com/).
|
|
4
|
+
|
|
5
|
+
```ts
|
|
6
|
+
|
|
7
|
+
import { IRequest } from '@fluidframework/core-interfaces';
|
|
8
|
+
import { IResolvedUrl } from '@fluidframework/driver-definitions';
|
|
9
|
+
import { IUrlResolver } from '@fluidframework/driver-definitions';
|
|
10
|
+
import { IUser } from '@fluidframework/protocol-definitions';
|
|
11
|
+
import { Provider } from 'nconf';
|
|
12
|
+
|
|
13
|
+
// @internal (undocumented)
|
|
14
|
+
export interface IAlfredUser extends IUser {
|
|
15
|
+
// (undocumented)
|
|
16
|
+
displayName: string;
|
|
17
|
+
// (undocumented)
|
|
18
|
+
name: string;
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
// @internal (undocumented)
|
|
22
|
+
export interface IConfig {
|
|
23
|
+
// (undocumented)
|
|
24
|
+
blobStorageUrl: string;
|
|
25
|
+
// (undocumented)
|
|
26
|
+
documentId: string;
|
|
27
|
+
// (undocumented)
|
|
28
|
+
serverUrl: string;
|
|
29
|
+
// (undocumented)
|
|
30
|
+
tenantId: string;
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
// @internal (undocumented)
|
|
34
|
+
export class RouterliciousUrlResolver implements IUrlResolver {
|
|
35
|
+
constructor(config: {
|
|
36
|
+
provider: Provider;
|
|
37
|
+
tenantId: string;
|
|
38
|
+
documentId: string;
|
|
39
|
+
} | undefined, getToken: () => Promise<string>, hostUrl: string);
|
|
40
|
+
// (undocumented)
|
|
41
|
+
getAbsoluteUrl(resolvedUrl: IResolvedUrl, relativeUrl: string): Promise<string>;
|
|
42
|
+
resolve(request: IRequest): Promise<IResolvedUrl | undefined>;
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
// (No @packageDocumentation comment for this package)
|
|
46
|
+
|
|
47
|
+
```
|
package/dist/index.cjs
ADDED
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/*!
|
|
3
|
+
* Copyright (c) Microsoft Corporation and contributors. All rights reserved.
|
|
4
|
+
* Licensed under the MIT License.
|
|
5
|
+
*/
|
|
6
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
|
+
exports.RouterliciousUrlResolver = void 0;
|
|
8
|
+
var urlResolver_1 = require("./urlResolver.cjs");
|
|
9
|
+
Object.defineProperty(exports, "RouterliciousUrlResolver", { enumerable: true, get: function () { return urlResolver_1.RouterliciousUrlResolver; } });
|
|
10
|
+
//# sourceMappingURL=index.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.cjs","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAEH,iDAA+E;AAAhD,uHAAA,wBAAwB,OAAA","sourcesContent":["/*!\n * Copyright (c) Microsoft Corporation and contributors. All rights reserved.\n * Licensed under the MIT License.\n */\n\nexport { IAlfredUser, IConfig, RouterliciousUrlResolver } from \"./urlResolver\";\n"]}
|
package/dist/index.d.ts
CHANGED
|
@@ -2,5 +2,5 @@
|
|
|
2
2
|
* Copyright (c) Microsoft Corporation and contributors. All rights reserved.
|
|
3
3
|
* Licensed under the MIT License.
|
|
4
4
|
*/
|
|
5
|
-
export
|
|
5
|
+
export { IAlfredUser, IConfig, RouterliciousUrlResolver } from "./urlResolver";
|
|
6
6
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,wBAAwB,EAAE,MAAM,eAAe,CAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { IRequest } from '@fluidframework/core-interfaces';
|
|
2
|
+
import { IResolvedUrl } from '@fluidframework/driver-definitions';
|
|
3
|
+
import { IUrlResolver } from '@fluidframework/driver-definitions';
|
|
4
|
+
import { IUser } from '@fluidframework/protocol-definitions';
|
|
5
|
+
import { Provider } from 'nconf';
|
|
6
|
+
|
|
7
|
+
/* Excluded from this release type: IAlfredUser */
|
|
8
|
+
|
|
9
|
+
/* Excluded from this release type: IConfig */
|
|
10
|
+
|
|
11
|
+
/* Excluded from this release type: RouterliciousUrlResolver */
|
|
12
|
+
|
|
13
|
+
export { }
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { IRequest } from '@fluidframework/core-interfaces';
|
|
2
|
+
import { IResolvedUrl } from '@fluidframework/driver-definitions';
|
|
3
|
+
import { IUrlResolver } from '@fluidframework/driver-definitions';
|
|
4
|
+
import { IUser } from '@fluidframework/protocol-definitions';
|
|
5
|
+
import { Provider } from 'nconf';
|
|
6
|
+
|
|
7
|
+
/* Excluded from this release type: IAlfredUser */
|
|
8
|
+
|
|
9
|
+
/* Excluded from this release type: IConfig */
|
|
10
|
+
|
|
11
|
+
/* Excluded from this release type: IResolvedUrl */
|
|
12
|
+
|
|
13
|
+
/* Excluded from this release type: IUrlResolver */
|
|
14
|
+
|
|
15
|
+
/* Excluded from this release type: RouterliciousUrlResolver */
|
|
16
|
+
|
|
17
|
+
export { }
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { IRequest } from '@fluidframework/core-interfaces';
|
|
2
|
+
import { IResolvedUrl } from '@fluidframework/driver-definitions';
|
|
3
|
+
import { IUrlResolver } from '@fluidframework/driver-definitions';
|
|
4
|
+
import { IUser } from '@fluidframework/protocol-definitions';
|
|
5
|
+
import { Provider } from 'nconf';
|
|
6
|
+
|
|
7
|
+
/* Excluded from this release type: IAlfredUser */
|
|
8
|
+
|
|
9
|
+
/* Excluded from this release type: IConfig */
|
|
10
|
+
|
|
11
|
+
/* Excluded from this release type: IResolvedUrl */
|
|
12
|
+
|
|
13
|
+
/* Excluded from this release type: IUrlResolver */
|
|
14
|
+
|
|
15
|
+
/* Excluded from this release type: RouterliciousUrlResolver */
|
|
16
|
+
|
|
17
|
+
export { }
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import { IRequest } from '@fluidframework/core-interfaces';
|
|
2
|
+
import { IResolvedUrl } from '@fluidframework/driver-definitions';
|
|
3
|
+
import { IUrlResolver } from '@fluidframework/driver-definitions';
|
|
4
|
+
import { IUser } from '@fluidframework/protocol-definitions';
|
|
5
|
+
import { Provider } from 'nconf';
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* @internal
|
|
9
|
+
*/
|
|
10
|
+
export declare interface IAlfredUser extends IUser {
|
|
11
|
+
displayName: string;
|
|
12
|
+
name: string;
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
/**
|
|
16
|
+
* @internal
|
|
17
|
+
*/
|
|
18
|
+
export declare interface IConfig {
|
|
19
|
+
serverUrl: string;
|
|
20
|
+
blobStorageUrl: string;
|
|
21
|
+
tenantId: string;
|
|
22
|
+
documentId: string;
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
/**
|
|
26
|
+
* @internal
|
|
27
|
+
*/
|
|
28
|
+
export declare class RouterliciousUrlResolver implements IUrlResolver {
|
|
29
|
+
private readonly config;
|
|
30
|
+
private readonly getToken;
|
|
31
|
+
private readonly hostUrl;
|
|
32
|
+
constructor(config: {
|
|
33
|
+
provider: Provider;
|
|
34
|
+
tenantId: string;
|
|
35
|
+
documentId: string;
|
|
36
|
+
} | undefined, getToken: () => Promise<string>, hostUrl: string);
|
|
37
|
+
/**
|
|
38
|
+
* Handles a request and returns the relevant endpoints for the environment
|
|
39
|
+
*/
|
|
40
|
+
resolve(request: IRequest): Promise<IResolvedUrl | undefined>;
|
|
41
|
+
getAbsoluteUrl(resolvedUrl: IResolvedUrl, relativeUrl: string): Promise<string>;
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
export { }
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
// This file is read by tools that parse documentation comments conforming to the TSDoc standard.
|
|
2
|
+
// It should be published with your NPM package. It should not be tracked by Git.
|
|
3
|
+
{
|
|
4
|
+
"tsdocVersion": "0.12",
|
|
5
|
+
"toolPackages": [
|
|
6
|
+
{
|
|
7
|
+
"packageName": "@microsoft/api-extractor",
|
|
8
|
+
"packageVersion": "7.38.3"
|
|
9
|
+
}
|
|
10
|
+
]
|
|
11
|
+
}
|
|
@@ -6,12 +6,15 @@
|
|
|
6
6
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
7
|
exports.RouterliciousUrlResolver = void 0;
|
|
8
8
|
const url_1 = require("url");
|
|
9
|
-
const
|
|
9
|
+
const core_utils_1 = require("@fluidframework/core-utils");
|
|
10
10
|
const r11sServers = [
|
|
11
11
|
"www.wu2-ppe.prague.office-int.com",
|
|
12
12
|
"www.wu2.prague.office-int.com",
|
|
13
13
|
"www.eu.prague.office-int.com",
|
|
14
14
|
];
|
|
15
|
+
/**
|
|
16
|
+
* @internal
|
|
17
|
+
*/
|
|
15
18
|
class RouterliciousUrlResolver {
|
|
16
19
|
constructor(config, getToken, hostUrl) {
|
|
17
20
|
this.config = config;
|
|
@@ -30,7 +33,9 @@ class RouterliciousUrlResolver {
|
|
|
30
33
|
const reqUrl = new URL(requestedUrl);
|
|
31
34
|
const server = reqUrl.hostname.toLowerCase();
|
|
32
35
|
// If we don't have a valid server or a prescriptive config, we cannot resolve the URL
|
|
33
|
-
if (!(r11sServers.includes(server) ||
|
|
36
|
+
if (!(r11sServers.includes(server) ||
|
|
37
|
+
(server === "localhost" && reqUrl.port === "3000") ||
|
|
38
|
+
this.config)) {
|
|
34
39
|
return undefined;
|
|
35
40
|
}
|
|
36
41
|
const path = reqUrl.pathname.split("/");
|
|
@@ -55,7 +60,9 @@ class RouterliciousUrlResolver {
|
|
|
55
60
|
const isInternalRequest = server.includes("gateway"); // e.g. gateway:3000 || fierce-dog-gateway:3000
|
|
56
61
|
const serverSuffix = isLocalHost ? `${server}:3003` : server.substring(4);
|
|
57
62
|
let fluidUrl = "fluid://" +
|
|
58
|
-
`${this.config
|
|
63
|
+
`${this.config
|
|
64
|
+
? (0, url_1.parse)(this.config.provider.get("worker:serverUrl")).host
|
|
65
|
+
: serverSuffix}/` +
|
|
59
66
|
`${encodeURIComponent(tenantId)}/` +
|
|
60
67
|
`${encodeURIComponent(documentId)}`;
|
|
61
68
|
// In case of any additional parameters add them back to the url
|
|
@@ -72,15 +79,14 @@ class RouterliciousUrlResolver {
|
|
|
72
79
|
if (provider && isInternalRequest) {
|
|
73
80
|
storageUrl = provider.get("worker:internalBlobStorageUrl");
|
|
74
81
|
ordererUrl = provider.get("worker:alfredUrl");
|
|
75
|
-
deltaStorageUrl =
|
|
76
|
-
// eslint-disable-next-line max-len
|
|
77
|
-
`${provider.get("worker:alfredUrl")}/deltas/${encodeURIComponent(tenantId)}/${encodeURIComponent(documentId)}`;
|
|
82
|
+
deltaStorageUrl = `${provider.get("worker:alfredUrl")}/deltas/${encodeURIComponent(tenantId)}/${encodeURIComponent(documentId)}`;
|
|
78
83
|
}
|
|
79
84
|
else if (provider) {
|
|
80
|
-
storageUrl = provider
|
|
85
|
+
storageUrl = provider
|
|
86
|
+
.get("worker:blobStorageUrl")
|
|
87
|
+
.replace("historian:3000", "localhost:3001");
|
|
81
88
|
ordererUrl = provider.get("worker:serverUrl");
|
|
82
|
-
deltaStorageUrl =
|
|
83
|
-
`${ordererUrl}/deltas/${encodeURIComponent(tenantId)}/${encodeURIComponent(documentId)}`;
|
|
89
|
+
deltaStorageUrl = `${ordererUrl}/deltas/${encodeURIComponent(tenantId)}/${encodeURIComponent(documentId)}`;
|
|
84
90
|
}
|
|
85
91
|
else if (isLocalHost) {
|
|
86
92
|
storageUrl = `http://localhost:3001`;
|
|
@@ -109,12 +115,11 @@ class RouterliciousUrlResolver {
|
|
|
109
115
|
return resolved;
|
|
110
116
|
}
|
|
111
117
|
async getAbsoluteUrl(resolvedUrl, relativeUrl) {
|
|
112
|
-
const
|
|
113
|
-
|
|
114
|
-
(0, common_utils_1.assert)(!!parsedUrl.pathname, 0x0b9 /* "PathName should exist" */);
|
|
118
|
+
const parsedUrl = (0, url_1.parse)(resolvedUrl.url);
|
|
119
|
+
(0, core_utils_1.assert)(!!parsedUrl.pathname, 0x0b9 /* "PathName should exist" */);
|
|
115
120
|
const [, tenantId, documentId] = parsedUrl.pathname.split("/");
|
|
116
|
-
(0,
|
|
117
|
-
(0,
|
|
121
|
+
(0, core_utils_1.assert)(!!tenantId, 0x0ba /* "Tenant id should exist" */);
|
|
122
|
+
(0, core_utils_1.assert)(!!documentId, 0x0bb /* "Document id should exist" */);
|
|
118
123
|
let url = relativeUrl;
|
|
119
124
|
if (url.startsWith("/")) {
|
|
120
125
|
url = url.substr(1);
|
|
@@ -123,4 +128,4 @@ class RouterliciousUrlResolver {
|
|
|
123
128
|
}
|
|
124
129
|
}
|
|
125
130
|
exports.RouterliciousUrlResolver = RouterliciousUrlResolver;
|
|
126
|
-
//# sourceMappingURL=urlResolver.
|
|
131
|
+
//# sourceMappingURL=urlResolver.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"urlResolver.cjs","sourceRoot":"","sources":["../src/urlResolver.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 { parse } from \"url\";\nimport { assert } from \"@fluidframework/core-utils\";\nimport { IRequest } from \"@fluidframework/core-interfaces\";\nimport { IResolvedUrl, IUrlResolver } from \"@fluidframework/driver-definitions\";\nimport { IUser } from \"@fluidframework/protocol-definitions\";\nimport { Provider } from \"nconf\";\n\nconst r11sServers = [\n\t\"www.wu2-ppe.prague.office-int.com\",\n\t\"www.wu2.prague.office-int.com\",\n\t\"www.eu.prague.office-int.com\",\n];\n\n/**\n * @internal\n */\nexport class RouterliciousUrlResolver implements IUrlResolver {\n\tconstructor(\n\t\tprivate readonly config:\n\t\t\t| { provider: Provider; tenantId: string; documentId: string }\n\t\t\t| undefined,\n\t\tprivate readonly getToken: () => Promise<string>,\n\t\tprivate readonly hostUrl: string,\n\t) {}\n\n\t/**\n\t * Handles a request and returns the relevant endpoints for the environment\n\t */\n\tpublic async resolve(request: IRequest): Promise<IResolvedUrl | undefined> {\n\t\tlet requestedUrl = request.url;\n\n\t\t// If we know the original hostname, reinsert it\n\t\tif (this.config && request.url.startsWith(\"/\")) {\n\t\t\trequestedUrl = `http://dummy:3000${request.url}`;\n\t\t}\n\n\t\tconst reqUrl = new URL(requestedUrl);\n\t\tconst server = reqUrl.hostname.toLowerCase();\n\n\t\t// If we don't have a valid server or a prescriptive config, we cannot resolve the URL\n\t\tif (\n\t\t\t!(\n\t\t\t\tr11sServers.includes(server) ||\n\t\t\t\t(server === \"localhost\" && reqUrl.port === \"3000\") ||\n\t\t\t\tthis.config\n\t\t\t)\n\t\t) {\n\t\t\treturn undefined;\n\t\t}\n\n\t\tconst path = reqUrl.pathname.split(\"/\");\n\t\tlet tenantId: string;\n\t\tlet documentId: string;\n\t\tlet provider: Provider | undefined;\n\t\tif (this.config) {\n\t\t\ttenantId = this.config.tenantId;\n\t\t\tdocumentId = this.config.documentId;\n\t\t\tprovider = this.config.provider;\n\t\t} else if (path.length >= 4) {\n\t\t\ttenantId = path[2];\n\t\t\tdocumentId = path[3];\n\t\t} else {\n\t\t\ttenantId = \"fluid\";\n\t\t\tdocumentId = path[2];\n\t\t}\n\n\t\tconst token = await this.getToken();\n\n\t\tconst isLocalHost = server === \"localhost\";\n\t\tconst isInternalRequest = server.includes(\"gateway\"); // e.g. gateway:3000 || fierce-dog-gateway:3000\n\n\t\tconst serverSuffix = isLocalHost ? `${server}:3003` : server.substring(4);\n\n\t\tlet fluidUrl =\n\t\t\t\"fluid://\" +\n\t\t\t`${\n\t\t\t\tthis.config\n\t\t\t\t\t? parse(this.config.provider.get(\"worker:serverUrl\")).host\n\t\t\t\t\t: serverSuffix\n\t\t\t}/` +\n\t\t\t`${encodeURIComponent(tenantId)}/` +\n\t\t\t`${encodeURIComponent(documentId)}`;\n\n\t\t// In case of any additional parameters add them back to the url\n\t\tif (reqUrl.search) {\n\t\t\tconst searchParams = reqUrl.search;\n\t\t\tif (searchParams) {\n\t\t\t\tfluidUrl += searchParams;\n\t\t\t}\n\t\t}\n\n\t\tlet storageUrl = \"\";\n\t\tlet ordererUrl = \"\";\n\t\tlet deltaStorageUrl = \"\";\n\n\t\t// There is no provider when using debugging tooling\n\t\tif (provider && isInternalRequest) {\n\t\t\tstorageUrl = provider.get(\"worker:internalBlobStorageUrl\");\n\t\t\tordererUrl = provider.get(\"worker:alfredUrl\");\n\t\t\tdeltaStorageUrl = `${provider.get(\"worker:alfredUrl\")}/deltas/${encodeURIComponent(\n\t\t\t\ttenantId,\n\t\t\t)}/${encodeURIComponent(documentId)}`;\n\t\t} else if (provider) {\n\t\t\tstorageUrl = provider\n\t\t\t\t.get(\"worker:blobStorageUrl\")\n\t\t\t\t.replace(\"historian:3000\", \"localhost:3001\");\n\t\t\tordererUrl = provider.get(\"worker:serverUrl\");\n\t\t\tdeltaStorageUrl = `${ordererUrl}/deltas/${encodeURIComponent(\n\t\t\t\ttenantId,\n\t\t\t)}/${encodeURIComponent(documentId)}`;\n\t\t} else if (isLocalHost) {\n\t\t\tstorageUrl = `http://localhost:3001`;\n\t\t\tordererUrl = `http://localhost:3003`;\n\t\t\tdeltaStorageUrl = `http://localhost:3003/deltas/${tenantId}/${documentId}`;\n\t\t} else {\n\t\t\tstorageUrl = `https://historian.${serverSuffix}`;\n\t\t\tordererUrl = `https://alfred.${serverSuffix}`;\n\t\t\tdeltaStorageUrl = `https://alfred.${serverSuffix}/deltas/${tenantId}/${documentId}`;\n\t\t}\n\n\t\tstorageUrl += `/repos/${tenantId}`;\n\t\tordererUrl += ``;\n\t\tdeltaStorageUrl += ``;\n\n\t\tconst resolved: IResolvedUrl = {\n\t\t\tendpoints: {\n\t\t\t\tstorageUrl,\n\t\t\t\tdeltaStorageUrl,\n\t\t\t\tordererUrl,\n\t\t\t},\n\t\t\tid: documentId,\n\t\t\ttokens: { jwt: token },\n\t\t\ttype: \"fluid\",\n\t\t\turl: fluidUrl,\n\t\t};\n\t\treturn resolved;\n\t}\n\n\tpublic async getAbsoluteUrl(resolvedUrl: IResolvedUrl, relativeUrl: string): Promise<string> {\n\t\tconst parsedUrl = parse(resolvedUrl.url);\n\t\tassert(!!parsedUrl.pathname, 0x0b9 /* \"PathName should exist\" */);\n\t\tconst [, tenantId, documentId] = parsedUrl.pathname.split(\"/\");\n\t\tassert(!!tenantId, 0x0ba /* \"Tenant id should exist\" */);\n\t\tassert(!!documentId, 0x0bb /* \"Document id should exist\" */);\n\n\t\tlet url = relativeUrl;\n\t\tif (url.startsWith(\"/\")) {\n\t\t\turl = url.substr(1);\n\t\t}\n\n\t\treturn `${this.hostUrl}/${encodeURIComponent(tenantId)}/${encodeURIComponent(\n\t\t\tdocumentId,\n\t\t)}/${url}`;\n\t}\n}\n\n/**\n * @internal\n */\nexport interface IAlfredUser extends IUser {\n\tdisplayName: string;\n\tname: string;\n}\n\n/**\n * @internal\n */\nexport interface IConfig {\n\tserverUrl: string;\n\tblobStorageUrl: string;\n\ttenantId: string;\n\tdocumentId: string;\n}\n"]}
|
package/dist/urlResolver.d.ts
CHANGED
|
@@ -6,6 +6,9 @@ import { IRequest } from "@fluidframework/core-interfaces";
|
|
|
6
6
|
import { IResolvedUrl, IUrlResolver } from "@fluidframework/driver-definitions";
|
|
7
7
|
import { IUser } from "@fluidframework/protocol-definitions";
|
|
8
8
|
import { Provider } from "nconf";
|
|
9
|
+
/**
|
|
10
|
+
* @internal
|
|
11
|
+
*/
|
|
9
12
|
export declare class RouterliciousUrlResolver implements IUrlResolver {
|
|
10
13
|
private readonly config;
|
|
11
14
|
private readonly getToken;
|
|
@@ -21,10 +24,16 @@ export declare class RouterliciousUrlResolver implements IUrlResolver {
|
|
|
21
24
|
resolve(request: IRequest): Promise<IResolvedUrl | undefined>;
|
|
22
25
|
getAbsoluteUrl(resolvedUrl: IResolvedUrl, relativeUrl: string): Promise<string>;
|
|
23
26
|
}
|
|
27
|
+
/**
|
|
28
|
+
* @internal
|
|
29
|
+
*/
|
|
24
30
|
export interface IAlfredUser extends IUser {
|
|
25
31
|
displayName: string;
|
|
26
32
|
name: string;
|
|
27
33
|
}
|
|
34
|
+
/**
|
|
35
|
+
* @internal
|
|
36
|
+
*/
|
|
28
37
|
export interface IConfig {
|
|
29
38
|
serverUrl: string;
|
|
30
39
|
blobStorageUrl: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"urlResolver.d.ts","sourceRoot":"","sources":["../src/urlResolver.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,
|
|
1
|
+
{"version":3,"file":"urlResolver.d.ts","sourceRoot":"","sources":["../src/urlResolver.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,EAAE,QAAQ,EAAE,MAAM,iCAAiC,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAC;AAChF,OAAO,EAAE,KAAK,EAAE,MAAM,sCAAsC,CAAC;AAC7D,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAQjC;;GAEG;AACH,qBAAa,wBAAyB,YAAW,YAAY;IAE3D,OAAO,CAAC,QAAQ,CAAC,MAAM;IAGvB,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,OAAO;gBAJP,MAAM,EACpB;QAAE,QAAQ,EAAE,QAAQ,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAA;KAAE,GAC5D,SAAS,EACK,QAAQ,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,EAC/B,OAAO,EAAE,MAAM;IAGjC;;OAEG;IACU,OAAO,CAAC,OAAO,EAAE,QAAQ,GAAG,OAAO,CAAC,YAAY,GAAG,SAAS,CAAC;IA8G7D,cAAc,CAAC,WAAW,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;CAgB5F;AAED;;GAEG;AACH,MAAM,WAAW,WAAY,SAAQ,KAAK;IACzC,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;CACb;AAED;;GAEG;AACH,MAAM,WAAW,OAAO;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,EAAE,MAAM,CAAC;IACvB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;CACnB"}
|
package/lib/index.d.mts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;OAEI,EAAE,WAAW,EAAE,OAAO,EAAE,wBAAwB,EAAE"}
|
|
@@ -2,5 +2,5 @@
|
|
|
2
2
|
* Copyright (c) Microsoft Corporation and contributors. All rights reserved.
|
|
3
3
|
* Licensed under the MIT License.
|
|
4
4
|
*/
|
|
5
|
-
export
|
|
6
|
-
//# sourceMappingURL=index.
|
|
5
|
+
export { RouterliciousUrlResolver } from "./urlResolver.mjs";
|
|
6
|
+
//# sourceMappingURL=index.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.mjs","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;OAEI,EAAwB,wBAAwB,EAAE","sourcesContent":["/*!\n * Copyright (c) Microsoft Corporation and contributors. All rights reserved.\n * Licensed under the MIT License.\n */\n\nexport { IAlfredUser, IConfig, RouterliciousUrlResolver } from \"./urlResolver\";\n"]}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { IRequest } from '@fluidframework/core-interfaces';
|
|
2
|
+
import { IResolvedUrl } from '@fluidframework/driver-definitions';
|
|
3
|
+
import { IUrlResolver } from '@fluidframework/driver-definitions';
|
|
4
|
+
import { IUser } from '@fluidframework/protocol-definitions';
|
|
5
|
+
import { Provider } from 'nconf';
|
|
6
|
+
|
|
7
|
+
/* Excluded from this release type: IAlfredUser */
|
|
8
|
+
|
|
9
|
+
/* Excluded from this release type: IConfig */
|
|
10
|
+
|
|
11
|
+
/* Excluded from this release type: RouterliciousUrlResolver */
|
|
12
|
+
|
|
13
|
+
export { }
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { IRequest } from '@fluidframework/core-interfaces';
|
|
2
|
+
import { IResolvedUrl } from '@fluidframework/driver-definitions';
|
|
3
|
+
import { IUrlResolver } from '@fluidframework/driver-definitions';
|
|
4
|
+
import { IUser } from '@fluidframework/protocol-definitions';
|
|
5
|
+
import { Provider } from 'nconf';
|
|
6
|
+
|
|
7
|
+
/* Excluded from this release type: IAlfredUser */
|
|
8
|
+
|
|
9
|
+
/* Excluded from this release type: IConfig */
|
|
10
|
+
|
|
11
|
+
/* Excluded from this release type: IResolvedUrl */
|
|
12
|
+
|
|
13
|
+
/* Excluded from this release type: IUrlResolver */
|
|
14
|
+
|
|
15
|
+
/* Excluded from this release type: RouterliciousUrlResolver */
|
|
16
|
+
|
|
17
|
+
export { }
|