Docs: Fix API doc build (#2571)
- Fixes API sidebar in docs side so it only includes top-level packages - Moves the _api-extractor-temp files to the /docs folder - Updates includes to handle new package paths - Updates Dockerfile to handle new package names
This commit is contained in:
Родитель
ec326e8d9b
Коммит
53879df1c0
|
@ -0,0 +1,10 @@
|
|||
**/node_modules
|
||||
**/dist
|
||||
**/lib
|
||||
**/nyc
|
||||
**/*.tsbuildinfo
|
||||
|
||||
.vscode
|
||||
kubernetes
|
||||
verdaccio
|
||||
.gitignore
|
|
@ -133,7 +133,7 @@ const getApiSidebar = () => {
|
|||
let apiCategories = new Map();
|
||||
let apiSidebar = [{
|
||||
title: "API Overview",
|
||||
path: "index",
|
||||
path: "",
|
||||
collapsable: false,
|
||||
sidebarDepth: 0
|
||||
}];
|
||||
|
@ -147,29 +147,30 @@ const getApiSidebar = () => {
|
|||
let category = apiMapping.get(packageName) || "Unknown";
|
||||
if (!apiCategories.has(category)) {
|
||||
// console.log(`Creating entry for ${category}`);
|
||||
apiCategories.set(category, [file]);
|
||||
apiCategories.set(category, new Set([`${packageName}.md`]));
|
||||
} else {
|
||||
const current = apiCategories.get(category);
|
||||
current.push(file);
|
||||
let current = apiCategories.get(category);
|
||||
// let current = new Set();
|
||||
current.add(`${packageName}.md`);
|
||||
apiCategories.set(category, current);
|
||||
}
|
||||
}
|
||||
|
||||
// console.log(apiCategories);
|
||||
if (apiCategories.get("Unknown")) {
|
||||
const unknownCategory = new Set(apiCategories.get("Unknown").map(f => packageFromFilePath(f)));
|
||||
console.log(`Packages with no category:`);
|
||||
console.log(unknownCategory);
|
||||
}
|
||||
const categoryToLog = "Framework";
|
||||
console.log(`Packages with ${categoryToLog} category:`);
|
||||
console.log(apiCategories.get(categoryToLog));
|
||||
|
||||
apiCategories.forEach((value, key) => {
|
||||
apiSidebar.push({
|
||||
title: key,
|
||||
sidebarDepth: 2,
|
||||
children: value
|
||||
children: Array.from(value)
|
||||
});
|
||||
});
|
||||
|
||||
console.log(JSON.stringify(apiSidebar));
|
||||
|
||||
return apiSidebar;
|
||||
}
|
||||
|
||||
|
|
|
@ -1,18 +1,29 @@
|
|||
# Copyright (c) Microsoft Corporation. All rights reserved.
|
||||
# Licensed under the MIT License.
|
||||
|
||||
# To build this docker image, run the following command from the root of the repo
|
||||
# docker build -f .\docs\Dockerfile --target docs -t fluid:docs .
|
||||
|
||||
# To get content out of the image, use these commands:
|
||||
|
||||
# 1. create a temporary writeable image
|
||||
# docker create -ti --name dummy fluid:docs bash
|
||||
|
||||
# 2. copy out the docs/dist folder
|
||||
# docker cp dummy:docs/dist/ docs/
|
||||
|
||||
# 3. Remove the temporary image
|
||||
# docker rm -f dummy
|
||||
|
||||
# rsync docs/dist/ docker/ -rv --delete --exclude '.git' --exclude 'versions'
|
||||
|
||||
FROM node:12.16.1-slim AS base
|
||||
|
||||
# node-gyp dependencies
|
||||
# dependencies
|
||||
RUN apt-get update && apt-get install -y \
|
||||
g++ \
|
||||
git \
|
||||
make \
|
||||
python \
|
||||
yarn
|
||||
|
||||
RUN npm install -g @microsoft/api-documenter@^7.4.6 copyfiles@^2.1.0
|
||||
|
||||
#############################
|
||||
FROM base AS vuepress
|
||||
# Use pre-release version of vuepress with a perf fix
|
||||
|
|
|
@ -1,14 +0,0 @@
|
|||
---
|
||||
uid: advanced
|
||||
---
|
||||
|
||||
# Advanced Topics
|
||||
|
||||
## Designing for concurrency
|
||||
|
||||
* Examples of problems that arise in concurrent world and how to properly deal with them (this is advanced topic, but it
|
||||
will help add trust into the system – i.e. we thought about these issues, and while we do not claim we have magical solution
|
||||
that solves all the needs, we believe with right approaches one can solve complex problems, and here are examples
|
||||
helping understand how to think though these problems).
|
||||
* Perhaps something "simple" like a collection of objects (comments) and references from shared string, possible
|
||||
approaches, need to GC non-rooted comments, etc.
|
|
@ -2,6 +2,6 @@
|
|||
title: SharedCounter
|
||||
---
|
||||
|
||||
!!!include(../../../packages/runtime/counter/README.md)!!!
|
||||
!!!include(../../../packages/dds/counter/README.md)!!!
|
||||
|
||||
_From <https://github.com/microsoft/FluidFramework/blob/master/packages/runtime/counter/README.md>._
|
||||
_From <https://github.com/microsoft/FluidFramework/blob/master/packages/dds/counter/README.md>._
|
||||
|
|
|
@ -6,4 +6,4 @@ sidebarDepth: 2
|
|||
- Package: [@fluidframework/matrix](../api/matrix.md)
|
||||
- API documentation: [SharedMatrix](../api/matrix.sharedmatrix.md)
|
||||
|
||||
!!!include(../../../packages/runtime/matrix/README.md)!!!
|
||||
!!!include(../../../packages/dds/matrix/README.md)!!!
|
||||
|
|
|
@ -100,10 +100,10 @@ a single level of the folder hierarchy, or simply avoid relative links in reusab
|
|||
|
||||
You can include files located anywhere in the repo using the same `!!!include()` syntax. The path to the file in the
|
||||
repo must be specified relative to `docs/.vuepress/includes`. For example, if you want to include the readme file at
|
||||
`packages/runtime/sequence/readme.md`, for example, you would specify the include path like so:
|
||||
`packages/dds/sequence/readme.md`, for example, you would specify the include path like so:
|
||||
|
||||
```markdown
|
||||
!!!innclude(../../../packages/runtime/sequence/readme.md)!!!
|
||||
!!!innclude(../../../dds/sequence/readme.md)!!!
|
||||
```
|
||||
|
||||
You can create a simple wrapper page within the docs folder, then include a file from the repo within it. See
|
||||
|
|
|
@ -2,6 +2,6 @@
|
|||
title: Sequences primer
|
||||
---
|
||||
|
||||
!!!include(../../../packages/runtime/sequence/readme.md)!!!
|
||||
!!!include(../../../packages/dds/sequence/readme.md)!!!
|
||||
|
||||
_From <https://github.com/microsoft/FluidFramework/blob/master/packages/runtime/sequence/readme.md>._
|
||||
_From <https://github.com/microsoft/FluidFramework/blob/master/packages/dds/sequence/readme.md>._
|
||||
|
|
|
@ -1,44 +0,0 @@
|
|||
# Frequently asked questions
|
||||
|
||||
## How do I get started?
|
||||
|
||||
Check out our [getting started guide](../docs/README.md).
|
||||
|
||||
## Can I run Routerlicious locally?
|
||||
|
||||
Yes; see the [Routerlicious
|
||||
documentation](https://github.com/microsoft/FluidFramework/blob/master/server/routerlicious/README.md).
|
||||
|
||||
## Why can't I build or start docker?
|
||||
|
||||
[Allocate more than 4GB of RAM to Docker and share your harddrive with
|
||||
Docker](https://stackoverflow.microsoft.com/questions/137472/im-getting-docker-build-error-number-137).
|
||||
|
||||
## Why can't I install Fluid dependencies?
|
||||
|
||||
[You're probably having problems with npm and private npm
|
||||
registries](https://stackoverflow.microsoft.com/questions/137930/npm-install-fails-with-auth-issues/137931#137931).
|
||||
|
||||
## Is there a set of design principles I can look at?
|
||||
|
||||
Architectural design principals can be found in the [Fluid architecture documentation](../how/README.md).
|
||||
|
||||
## Do you have a homepage?
|
||||
|
||||
Yes! <https://aka.ms/fluid/>
|
||||
|
||||
## Why aren't commandline tools working?
|
||||
|
||||
You may need to upgrade Node.js.
|
||||
|
||||
!!!include(node-versions.md)!!!
|
||||
|
||||
## Do you have any suggested reading before I get started?
|
||||
|
||||
If you need to read, check out our [architecture documents](../how/README.md).
|
||||
|
||||
But it's more fun to [start hacking](../docs/create-a-new-fluid-component.md)!
|
||||
|
||||
## Can I contribute to Fluid?
|
||||
|
||||
Yes! See our [contribution guide](../contributing/README.md).
|
|
@ -1,50 +0,0 @@
|
|||
# Glossary
|
||||
|
||||
* This section will contain deeper information about the key concepts that developers should understand to be effective
|
||||
with Fluid.
|
||||
|
||||
## Components
|
||||
|
||||
A component is little more than a JavaScript object. What makes Fluid components special is the following:
|
||||
|
||||
* They are instantiated by the Fluid runtime
|
||||
* They are opened/created via a unique URL
|
||||
* The code executing inside the component is the current code package accepted by the container's Quorum
|
||||
* They are per-client singletons (i.e., opening the same URL multiple times on the same client returns the same
|
||||
component instance)
|
||||
* They encapsulate distributed data structures that automatically synchronize with component instances created via the
|
||||
same URL by other clients
|
||||
* A component also has the capability to load other components, including components from other containers, provided
|
||||
that the user bears the appropriate token and has the necessary code loader
|
||||
|
||||
## Containers
|
||||
|
||||
A Container hosts a collection of Components. It is responsible for:
|
||||
|
||||
* Determining what code executes in hosted component (via quorum)
|
||||
* Resolving URL paths to component instances
|
||||
|
||||
All components hosted within a container share:
|
||||
|
||||
* The same code packages
|
||||
* The same total ordering
|
||||
* The same auth requirements
|
||||
|
||||
This means that containers are the finest-grained versioning and security boundaries understood by the core runtime:
|
||||
|
||||
* The code executed by all components running in a container is updated together/atomically via the container
|
||||
* A user with the capability to open a component within a container has the capability to open any component in the
|
||||
container (if they know the URL)
|
||||
|
||||
The granularity at which containers are used is up to the application, but using a container per document is often
|
||||
natural.
|
||||
|
||||
In general, developers should not implement their own container, but should use the generic container included in the
|
||||
SDK (with possible customizations to routing.)
|
||||
|
||||
The granularity at which components are used is up to the application, but there are two cases where an application is
|
||||
required to use separate components:
|
||||
|
||||
1. Anything that can be independently hosted/reused must be a separate component. For example, TableDocument is a
|
||||
separate component to support multiple views of the same data (e.g., Chart, Tablero, etc.)
|
||||
2. Anything that can be versioned independently must be a separate component. (e.g. extensibility points)
|
|
@ -1,61 +0,0 @@
|
|||
---
|
||||
uid: doc-index
|
||||
---
|
||||
|
||||
# Big page of docs and decks
|
||||
|
||||
## Docs
|
||||
|
||||
### Overviews
|
||||
|
||||
- [What is Fluid?](../what-is-fluid.md)
|
||||
- [Fluid Component Model](../docs/components.md)
|
||||
- [Anatomy of a DDS](../docs/dds-anatomy.md)
|
||||
|
||||
### Tutorials
|
||||
|
||||
- [Component tutorials](../examples/README.md)
|
||||
- [Literate Host Sample](https://github.com/microsoft/FluidFramework/tree/master/examples/hosts/literate) (GitHub)
|
||||
|
||||
### Advanced
|
||||
|
||||
- [Shared
|
||||
String.docx](https://microsoft-my.sharepoint-df.com/:w:/p/anthonm/Eeshhh4GSslDkjLKK28lunIBwrh-7glib7Lfnw_9ixNL8A?e=wD35Yi)
|
||||
- [Fluid Framework Developer Guide](../how/developer-guide.md)
|
||||
- [Total Order Broadcast & Eventual Consistency](../how/tob.md)
|
||||
- [Fluid Loading Deep Dive](https://microsoft.sharepoint.com/:w:/t/Prague/EY_xwXmXzXRBlnx6sMgbVp8Bbs4K3GQXhV6ERUyKhLgNbA?e=wFWoFH)
|
||||
(slightly out of date)
|
||||
|
||||
## Decks
|
||||
|
||||
### Overview
|
||||
|
||||
- [Fluid Framework
|
||||
Overview](https://microsoft.sharepoint.com/:p:/t/Prague/EWRRIFxzA61Dmu2PnfNic4UBGVbmT2gJSrDAhtCUNNHm_Q?e=MyyxDI) -
|
||||
Primary Overview (Best Starting Deck)
|
||||
- [Brief History of
|
||||
Fluid](https://microsoft-my.sharepoint-df.com/:p:/p/skjokiel/ER0wUgs1mcVKg9pWXRXymoQBYT7GoOjdxibPgIMd2vVz6g?e=gPODB2)
|
||||
|
||||
### Scenarios and Experiences Framing Decks
|
||||
|
||||
- Ignite 2019 BRK3075 – Learning about the Fluid Framework
|
||||
- [Deck](https://microsoft.sharepoint.com/:p:/t/M365PlatformIgnite2019/EQ-XJiw_voJOgByPHS7IBhEB1gYRUkjsewHklVqVE2mnRg?e=nUWIre)
|
||||
- [Recording of the presentation](https://myignite.techcommunity.microsoft.com/sessions/81642?source=sessions)
|
||||
|
||||
### Tutorial
|
||||
|
||||
- [Fluid Roadshow
|
||||
Deck](https://microsoft.sharepoint.com/:p:/t/Prague/Ec9E3ChMBAhGj5_INfpc1RUBRULdisHu8aplqnbcSDaz4w?e=VC4Ynv)
|
||||
- [Dev
|
||||
Kitchen](https://microsoft.sharepoint-df.com/:p:/t/MFxComponentFrameworkVTeam/EVd3JUck6aZEjgvJmQ4F9RYBlf3cH2DGimF6Rl9lpf4RCA?e=z4NLRC)
|
||||
October 2019
|
||||
|
||||
### Architectural/Technical
|
||||
|
||||
- [Fluid Runtime
|
||||
101](https://microsoft.sharepoint.com/:p:/t/Prague/EeHuSl8Y9yFCtneBacTyWFAByQbjMXVPutsPo-7So4kv6g?e=Sr4VmI) -
|
||||
Extremely technical Fluid 101
|
||||
- [Fluid Tech Stack House
|
||||
Diagram](https://microsoft.sharepoint.com/:p:/t/Prague/Ee2aE1hRwwpKh2Gj_aRk-gEBYjGbxSrW1xbcSPwCNmU7-g?e=3YOGPs) (or
|
||||
[Fluid Tech Stack
|
||||
House.png](https://microsoft.sharepoint.com/:p:/t/Prague/EeHuSl8Y9yFCtneBacTyWFAByQbjMXVPutsPo-7So4kv6g?e=Sr4VmI))
|
|
@ -1,45 +0,0 @@
|
|||
---
|
||||
uid: terminology
|
||||
---
|
||||
|
||||
# Terminology
|
||||
|
||||
## Component
|
||||
|
||||
See [Components](./concepts.md#components)
|
||||
|
||||
## Component Host
|
||||
|
||||
## Container
|
||||
|
||||
See [Containers](./concepts.md#containers)
|
||||
|
||||
## Driver
|
||||
|
||||
## Loader
|
||||
|
||||
See <https://github.com/microsoft/FluidFramework/blob/master/examples/hosts/literate/README.md>
|
||||
|
||||
## Quorum
|
||||
|
||||
## Routerlicious
|
||||
|
||||
See [Routerlicious](../server/README.md).
|
||||
|
||||
## Sequence Number
|
||||
|
||||
### Reference Sequence Number
|
||||
|
||||
### Minimum Sequence Number
|
||||
|
||||
## Snapshots
|
||||
|
||||
See [Summary ops](#summary-ops)
|
||||
|
||||
## Summary ops
|
||||
|
||||
- Summary ops are the conceptual replacement for what we formerly called snapshots.
|
||||
- Summary ops are created by the client and sent to the server for sequence number stamping and broadcasting like any
|
||||
other op type.
|
||||
|
||||
## Total Order Broadcast
|
|
@ -1679,11 +1679,62 @@
|
|||
"@hapi/hoek": "^8.3.0"
|
||||
}
|
||||
},
|
||||
"@microsoft/api-documenter": {
|
||||
"version": "7.8.13",
|
||||
"resolved": "https://office.pkgs.visualstudio.com/_packaging/Office/npm/registry/@microsoft/api-documenter/-/api-documenter-7.8.13.tgz",
|
||||
"integrity": "sha1-UF5J+pENaWQpCDgZNXv5/xEn0HY=",
|
||||
"requires": {
|
||||
"@microsoft/api-extractor-model": "7.8.8",
|
||||
"@microsoft/tsdoc": "0.12.19",
|
||||
"@rushstack/node-core-library": "3.24.1",
|
||||
"@rushstack/ts-command-line": "4.4.2",
|
||||
"colors": "~1.2.1",
|
||||
"js-yaml": "~3.13.1",
|
||||
"resolve": "~1.17.0"
|
||||
}
|
||||
},
|
||||
"@microsoft/api-extractor": {
|
||||
"version": "7.8.12",
|
||||
"resolved": "https://office.pkgs.visualstudio.com/_packaging/Office/npm/registry/@microsoft/api-extractor/-/api-extractor-7.8.12.tgz",
|
||||
"integrity": "sha1-3ARTDyu75jtkS9JT4VPpWwWxIDM=",
|
||||
"requires": {
|
||||
"@microsoft/api-extractor-model": "7.8.8",
|
||||
"@microsoft/tsdoc": "0.12.19",
|
||||
"@rushstack/node-core-library": "3.24.1",
|
||||
"@rushstack/ts-command-line": "4.4.2",
|
||||
"colors": "~1.2.1",
|
||||
"lodash": "~4.17.15",
|
||||
"resolve": "~1.17.0",
|
||||
"source-map": "~0.6.1",
|
||||
"typescript": "~3.7.2"
|
||||
},
|
||||
"dependencies": {
|
||||
"source-map": {
|
||||
"version": "0.6.1",
|
||||
"resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
|
||||
"integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g=="
|
||||
}
|
||||
}
|
||||
},
|
||||
"@microsoft/api-extractor-model": {
|
||||
"version": "7.8.8",
|
||||
"resolved": "https://office.pkgs.visualstudio.com/_packaging/Office/npm/registry/@microsoft/api-extractor-model/-/api-extractor-model-7.8.8.tgz",
|
||||
"integrity": "sha1-S6GXTJseLWtl2vVvYUnIjQp4RoA=",
|
||||
"requires": {
|
||||
"@microsoft/tsdoc": "0.12.19",
|
||||
"@rushstack/node-core-library": "3.24.1"
|
||||
}
|
||||
},
|
||||
"@microsoft/load-themed-styles": {
|
||||
"version": "1.10.55",
|
||||
"resolved": "https://offnet.pkgs.visualstudio.com/officenet/_packaging/fluid/npm/registry/@microsoft/load-themed-styles/-/load-themed-styles-1.10.55.tgz",
|
||||
"integrity": "sha1-9IsBEtuPQJ3HzDdnRYe+WdOZLsQ="
|
||||
},
|
||||
"@microsoft/tsdoc": {
|
||||
"version": "0.12.19",
|
||||
"resolved": "https://office.pkgs.visualstudio.com/_packaging/Office/npm/registry/@microsoft/tsdoc/-/tsdoc-0.12.19.tgz",
|
||||
"integrity": "sha1-IXPMuSRpqvYgMfqUmdIbFtB/m1c="
|
||||
},
|
||||
"@mrmlnc/readdir-enhanced": {
|
||||
"version": "2.2.1",
|
||||
"resolved": "https://registry.npmjs.org/@mrmlnc/readdir-enhanced/-/readdir-enhanced-2.2.1.tgz",
|
||||
|
@ -1698,6 +1749,52 @@
|
|||
"resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-1.1.3.tgz",
|
||||
"integrity": "sha512-shAmDyaQC4H92APFoIaVDHCx5bStIocgvbwQyxPRrbUY20V1EYTbSDchWbuwlMG3V17cprZhA6+78JfB+3DTPw=="
|
||||
},
|
||||
"@rushstack/node-core-library": {
|
||||
"version": "3.24.1",
|
||||
"resolved": "https://registry.npmjs.org/@rushstack/node-core-library/-/node-core-library-3.24.1.tgz",
|
||||
"integrity": "sha512-A21eDQwXAD9bZnvJZIEIhD171EQEWWo2afRs0sSUJ5FpMFpoDwx5DOY4hDE7dnczSKRmKsiDBV8hTSKhJrsw/A==",
|
||||
"requires": {
|
||||
"@types/node": "10.17.13",
|
||||
"colors": "~1.2.1",
|
||||
"fs-extra": "~7.0.1",
|
||||
"jju": "~1.4.0",
|
||||
"semver": "~5.3.0",
|
||||
"timsort": "~0.3.0",
|
||||
"z-schema": "~3.18.3"
|
||||
},
|
||||
"dependencies": {
|
||||
"@types/node": {
|
||||
"version": "10.17.13",
|
||||
"resolved": "https://registry.npmjs.org/@types/node/-/node-10.17.13.tgz",
|
||||
"integrity": "sha512-pMCcqU2zT4TjqYFrWtYHKal7Sl30Ims6ulZ4UFXxI4xbtQqK/qqKwkDoBFCfooRqqmRu9vY3xaJRwxSh673aYg=="
|
||||
},
|
||||
"fs-extra": {
|
||||
"version": "7.0.1",
|
||||
"resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-7.0.1.tgz",
|
||||
"integrity": "sha512-YJDaCJZEnBmcbw13fvdAM9AwNOJwOzrE4pqMqBq5nFiEqXUqHwlK4B+3pUw6JNvfSPtX05xFHtYy/1ni01eGCw==",
|
||||
"requires": {
|
||||
"graceful-fs": "^4.1.2",
|
||||
"jsonfile": "^4.0.0",
|
||||
"universalify": "^0.1.0"
|
||||
}
|
||||
},
|
||||
"semver": {
|
||||
"version": "5.3.0",
|
||||
"resolved": "https://registry.npmjs.org/semver/-/semver-5.3.0.tgz",
|
||||
"integrity": "sha1-myzl094C0XxgEq0yaqa00M9U+U8="
|
||||
}
|
||||
}
|
||||
},
|
||||
"@rushstack/ts-command-line": {
|
||||
"version": "4.4.2",
|
||||
"resolved": "https://registry.npmjs.org/@rushstack/ts-command-line/-/ts-command-line-4.4.2.tgz",
|
||||
"integrity": "sha512-iJ6wV+ICaE252J2snVPDiX4pz1r25CY1Ua/3QE4nd+lD+80hv6i6JLCDdmkculgYRXkAxvYXRtriD4JfqvgdKA==",
|
||||
"requires": {
|
||||
"@types/argparse": "1.0.38",
|
||||
"argparse": "~1.0.9",
|
||||
"colors": "~1.2.1"
|
||||
}
|
||||
},
|
||||
"@sindresorhus/is": {
|
||||
"version": "0.14.0",
|
||||
"resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-0.14.0.tgz",
|
||||
|
@ -1720,6 +1817,11 @@
|
|||
"defer-to-connect": "^1.0.1"
|
||||
}
|
||||
},
|
||||
"@types/argparse": {
|
||||
"version": "1.0.38",
|
||||
"resolved": "https://registry.npmjs.org/@types/argparse/-/argparse-1.0.38.tgz",
|
||||
"integrity": "sha512-ebDJ9b0e702Yr7pWgB0jzm+CX4Srzz8RcXtLJDJB+BSccqMa36uyH/zUsSYao5+BD1ytv3k3rPYCq4mAE1hsXA=="
|
||||
},
|
||||
"@types/color-name": {
|
||||
"version": "1.1.1",
|
||||
"resolved": "https://registry.npmjs.org/@types/color-name/-/color-name-1.1.1.tgz",
|
||||
|
@ -3835,6 +3937,11 @@
|
|||
"simple-swizzle": "^0.2.2"
|
||||
}
|
||||
},
|
||||
"colors": {
|
||||
"version": "1.2.5",
|
||||
"resolved": "https://registry.npmjs.org/colors/-/colors-1.2.5.tgz",
|
||||
"integrity": "sha512-erNRLao/Y3Fv54qUa0LBB+//Uf3YwMUmdJinN20yMXm9zdKKqH9wt7R9IIVZ+K7ShzfpLV/Zg8+VyrBJYB4lpg=="
|
||||
},
|
||||
"combined-stream": {
|
||||
"version": "1.0.8",
|
||||
"resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz",
|
||||
|
@ -7378,6 +7485,11 @@
|
|||
"resolved": "https://registry.npmjs.org/javascript-stringify/-/javascript-stringify-1.6.0.tgz",
|
||||
"integrity": "sha1-FC0RHzpuPa6PSpr9d9RYVbWpzOM="
|
||||
},
|
||||
"jju": {
|
||||
"version": "1.4.0",
|
||||
"resolved": "https://registry.npmjs.org/jju/-/jju-1.4.0.tgz",
|
||||
"integrity": "sha1-o6vicYryQaKykE+EpiWXDzia4yo="
|
||||
},
|
||||
"js-tokens": {
|
||||
"version": "4.0.0",
|
||||
"resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz",
|
||||
|
@ -7655,6 +7767,11 @@
|
|||
"resolved": "https://registry.npmjs.org/lodash.deburr/-/lodash.deburr-4.1.0.tgz",
|
||||
"integrity": "sha1-3bG7s+8HRYwBd7oH3hRCLLAz/5s="
|
||||
},
|
||||
"lodash.get": {
|
||||
"version": "4.4.2",
|
||||
"resolved": "https://registry.npmjs.org/lodash.get/-/lodash.get-4.4.2.tgz",
|
||||
"integrity": "sha1-LRd/ZS+jHpObRDjVNBSZ36OCXpk="
|
||||
},
|
||||
"lodash.includes": {
|
||||
"version": "4.3.0",
|
||||
"resolved": "https://registry.npmjs.org/lodash.includes/-/lodash.includes-4.3.0.tgz",
|
||||
|
@ -7665,6 +7782,11 @@
|
|||
"resolved": "https://registry.npmjs.org/lodash.isboolean/-/lodash.isboolean-3.0.3.tgz",
|
||||
"integrity": "sha1-bC4XHbKiV82WgC/UOwGyDV9YcPY="
|
||||
},
|
||||
"lodash.isequal": {
|
||||
"version": "4.5.0",
|
||||
"resolved": "https://registry.npmjs.org/lodash.isequal/-/lodash.isequal-4.5.0.tgz",
|
||||
"integrity": "sha1-QVxEePK8wwEgwizhDtMib30+GOA="
|
||||
},
|
||||
"lodash.isinteger": {
|
||||
"version": "4.0.4",
|
||||
"resolved": "https://registry.npmjs.org/lodash.isinteger/-/lodash.isinteger-4.0.4.tgz",
|
||||
|
@ -11777,6 +11899,11 @@
|
|||
"is-typedarray": "^1.0.0"
|
||||
}
|
||||
},
|
||||
"typescript": {
|
||||
"version": "3.7.5",
|
||||
"resolved": "https://registry.npmjs.org/typescript/-/typescript-3.7.5.tgz",
|
||||
"integrity": "sha512-/P5lkRXkWHNAbcJIiHPfRoKqyd7bsyCma1hZNUGfn20qm64T6ZBlrzprymeu918H+mB/0rIg2gGK/BXkhhYgBw=="
|
||||
},
|
||||
"uc.micro": {
|
||||
"version": "1.0.6",
|
||||
"resolved": "https://registry.npmjs.org/uc.micro/-/uc.micro-1.0.6.tgz",
|
||||
|
@ -12144,6 +12271,11 @@
|
|||
"spdx-expression-parse": "^3.0.0"
|
||||
}
|
||||
},
|
||||
"validator": {
|
||||
"version": "8.2.0",
|
||||
"resolved": "https://registry.npmjs.org/validator/-/validator-8.2.0.tgz",
|
||||
"integrity": "sha512-Yw5wW34fSv5spzTXNkokD6S6/Oq92d8q/t14TqsS3fAiA1RYnxSFSIZ+CY3n6PGGRCq5HhJTSepQvFUS2QUDxA=="
|
||||
},
|
||||
"vary": {
|
||||
"version": "1.1.2",
|
||||
"resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz",
|
||||
|
@ -13218,6 +13350,17 @@
|
|||
"resolved": "https://registry.npmjs.org/yeast/-/yeast-0.1.2.tgz",
|
||||
"integrity": "sha1-AI4G2AlDIMNy28L47XagymyKxBk="
|
||||
},
|
||||
"z-schema": {
|
||||
"version": "3.18.4",
|
||||
"resolved": "https://registry.npmjs.org/z-schema/-/z-schema-3.18.4.tgz",
|
||||
"integrity": "sha512-DUOKC/IhbkdLKKiV89gw9DUauTV8U/8yJl1sjf6MtDmzevLKOF2duNJ495S3MFVjqZarr+qNGCPbkg4mu4PpLw==",
|
||||
"requires": {
|
||||
"commander": "^2.7.1",
|
||||
"lodash.get": "^4.0.0",
|
||||
"lodash.isequal": "^4.0.0",
|
||||
"validator": "^8.0.0"
|
||||
}
|
||||
},
|
||||
"zepto": {
|
||||
"version": "1.2.0",
|
||||
"resolved": "https://registry.npmjs.org/zepto/-/zepto-1.2.0.tgz",
|
||||
|
|
|
@ -15,6 +15,7 @@
|
|||
"build:external": "npm run build:external:delete && npm run build:external:vuepress",
|
||||
"build:external:delete": "rimraf ./advanced/ ./contributing/ ./faq/ ./misc/ ./patterns ./server/ ./team/ ./tools/ guide/water-park.md guide/yo-fluid.md ./how/developer-guide.md",
|
||||
"build:external:vuepress": "cross-env NODE_OPTIONS=\"--max-old-space-size=8192\" FLUID_VAR_GROUP=external vuepress build --dest ./dist --cache .cache --workers 7",
|
||||
"build:gendocs": "api-documenter markdown -i _api-extractor-temp/doc-models -o api",
|
||||
"build:vuepress": "cross-env NODE_OPTIONS=\"--max-old-space-size=8192\" VUEPRESS_BASE=\"/\" vuepress build --dest ./dist --cache .cache",
|
||||
"clean": "rimraf api dist .vuepress/public/fluid/*/**",
|
||||
"lint": "vuepress check-md",
|
||||
|
@ -26,6 +27,8 @@
|
|||
"@fluid-example/diceroller": "^0.19.0",
|
||||
"@fluid-example/sudoku": "^0.19.0",
|
||||
"@fluidframework/local-web-host": "^0.19.0",
|
||||
"@microsoft/api-documenter": "^7.4.6",
|
||||
"@microsoft/api-extractor": "^7.7.2",
|
||||
"@vuepress/plugin-pwa": "^1.4.0",
|
||||
"copyfiles": "^2.3.0",
|
||||
"firstline": "^2.0.2",
|
||||
|
|
|
@ -1,6 +0,0 @@
|
|||
---
|
||||
---
|
||||
|
||||
# Patterns
|
||||
|
||||
## NOT YET WRITTEN
|
|
@ -1,3 +0,0 @@
|
|||
# Leader election
|
||||
|
||||
## NOT YET WRITTEN
|
|
@ -12,7 +12,6 @@
|
|||
"build:fast": "fluid-build --root .",
|
||||
"build:full": "npm run build:genver && npm run build:full:compile && npm run lint && npm run build:docs",
|
||||
"build:full:compile": "lerna run build:full:compile --stream",
|
||||
"build:gendocs": "api-documenter markdown -i _api-extractor-temp/doc-models -o docs/api",
|
||||
"build:genver": "lerna run build:genver --stream --parallel",
|
||||
"bump-version": "fluid-bump-version --root .",
|
||||
"ci:build": "npm run build:genver && lerna run build:compile --stream",
|
||||
|
|
Загрузка…
Ссылка в новой задаче