@travetto/doc 3.0.2 → 3.1.0-rc.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.
- package/README.md +65 -83
- package/__index__.ts +3 -4
- package/package.json +3 -3
- package/src/jsx.ts +107 -0
- package/src/mapping/lib-mapping.ts +107 -0
- package/src/mapping/mod-mapping.ts +250 -0
- package/src/render/context.ts +95 -25
- package/src/render/html.ts +151 -71
- package/src/render/markdown.ts +123 -60
- package/src/render/renderer.ts +146 -0
- package/src/types.ts +23 -53
- package/src/util/file.ts +28 -13
- package/src/util/resolve.ts +39 -62
- package/src/util/run.ts +11 -22
- package/support/cli.doc.ts +58 -50
- package/src/doc.ts +0 -24
- package/src/lib.ts +0 -109
- package/src/mod-mapping.ts +0 -258
- package/src/mod.ts +0 -8
- package/src/nodes.ts +0 -334
- package/src/render/util.ts +0 -67
package/src/util/run.ts
CHANGED
|
@@ -1,5 +1,3 @@
|
|
|
1
|
-
import { spawnSync } from 'child_process';
|
|
2
|
-
|
|
3
1
|
import { path, RootIndex } from '@travetto/manifest';
|
|
4
2
|
import { ExecUtil, ExecutionOptions, ExecutionState } from '@travetto/base';
|
|
5
3
|
import { stripAnsiCodes } from '@travetto/terminal';
|
|
@@ -51,18 +49,19 @@ export class DocRunUtil {
|
|
|
51
49
|
static #docState = new DocState();
|
|
52
50
|
|
|
53
51
|
static runState(cmd: string, args: string[], config: RunConfig = {}): RunState {
|
|
52
|
+
const cwd = config.cwd ?? (config.module ? RootIndex.getModule(config.module)! : RootIndex.mainModule).sourcePath;
|
|
54
53
|
args = [...args];
|
|
55
54
|
return {
|
|
56
55
|
cmd,
|
|
57
56
|
args,
|
|
58
57
|
opts: {
|
|
59
|
-
cwd: path.toPosix(
|
|
58
|
+
cwd: path.toPosix(cwd),
|
|
60
59
|
shell: '/bin/bash',
|
|
61
60
|
env: {
|
|
62
61
|
...process.env,
|
|
63
62
|
DEBUG: '0',
|
|
64
63
|
TRV_MANIFEST: '',
|
|
65
|
-
TRV_BUILD: '
|
|
64
|
+
TRV_BUILD: 'none',
|
|
66
65
|
TRV_MODULE: config.module ?? '',
|
|
67
66
|
...(config.profiles ? { TRV_PROFILES: config.profiles.join(' ') } : {}),
|
|
68
67
|
...(config.env ?? {})
|
|
@@ -75,9 +74,11 @@ export class DocRunUtil {
|
|
|
75
74
|
* Clean run output
|
|
76
75
|
*/
|
|
77
76
|
static cleanRunOutput(text: string, cfg: RunConfig): string {
|
|
77
|
+
const cwd = path.toPosix((cfg.module ? RootIndex.getModule(cfg.module)! : RootIndex.mainModule).sourcePath);
|
|
78
78
|
text = stripAnsiCodes(text.trim())
|
|
79
|
-
.
|
|
79
|
+
.replaceAll(cwd, '.')
|
|
80
80
|
.replaceAll(RootIndex.manifest.workspacePath, '<workspace-root>')
|
|
81
|
+
.replace(/[/]tmp[/][a-z_A-Z0-9\/\-]+/g, '/tmp/<temp-folder>')
|
|
81
82
|
.replace(/^(\s*framework:\s*')(\d+[.]\d+)[^']*('[,]?\s*)$/gm, (_, pre, ver, post) => `${pre}${ver}.x${post}`)
|
|
82
83
|
.replace(/^(\s*nodeVersion:\s*'v)(\d+)[^']*('[,]?\s*)$/gm, (_, pre, ver, post) => `${pre}${ver}.x.x${post}`)
|
|
83
84
|
.replace(/^(.{1,4})?Compiling[.]*/, '') // Compiling message, remove
|
|
@@ -99,35 +100,23 @@ export class DocRunUtil {
|
|
|
99
100
|
*/
|
|
100
101
|
static runBackground(cmd: string, args: string[], config: RunConfig = {}): ExecutionState {
|
|
101
102
|
const state = this.runState(cmd, args, config);
|
|
102
|
-
return ExecUtil.spawn(state.cmd, state.args, {
|
|
103
|
-
...state.opts,
|
|
104
|
-
stdio: 'pipe'
|
|
105
|
-
});
|
|
103
|
+
return ExecUtil.spawn(state.cmd, state.args, { ...state.opts, stdio: 'pipe' });
|
|
106
104
|
}
|
|
107
105
|
|
|
108
106
|
/**
|
|
109
107
|
* Run command synchronously and return output
|
|
110
108
|
*/
|
|
111
|
-
static run(cmd: string, args: string[], config: RunConfig = {}): string {
|
|
109
|
+
static async run(cmd: string, args: string[], config: RunConfig = {}): Promise<string> {
|
|
112
110
|
let final: string;
|
|
113
111
|
try {
|
|
114
112
|
const state = this.runState(cmd, args, config);
|
|
115
|
-
const
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
encoding: 'utf8',
|
|
119
|
-
maxBuffer: 1024 * 1024 * 20,
|
|
120
|
-
} as const;
|
|
121
|
-
|
|
122
|
-
const res = spawnSync(state.cmd, state.args, spawnCfg);
|
|
123
|
-
|
|
124
|
-
if (res.error) {
|
|
125
|
-
throw res.error;
|
|
113
|
+
const res = await ExecUtil.spawn(state.cmd, state.args, { stdio: 'pipe', ...state.opts, catchAsResult: true }).result;
|
|
114
|
+
if (!res.valid) {
|
|
115
|
+
throw new Error(res.stderr);
|
|
126
116
|
}
|
|
127
117
|
final = stripAnsiCodes(res.stdout.toString()).trim() || stripAnsiCodes(res.stderr.toString()).trim();
|
|
128
118
|
} catch (err) {
|
|
129
119
|
if (err instanceof Error) {
|
|
130
|
-
console.log('Found!', cmd, args, '\n', err);
|
|
131
120
|
final = err.message;
|
|
132
121
|
} else {
|
|
133
122
|
throw err;
|
package/support/cli.doc.ts
CHANGED
|
@@ -1,30 +1,25 @@
|
|
|
1
1
|
import fs from 'fs/promises';
|
|
2
2
|
|
|
3
|
-
import { PackageUtil, path, RootIndex,
|
|
3
|
+
import { PackageUtil, path, RootIndex, watchFolders } from '@travetto/manifest';
|
|
4
4
|
import { ExecUtil, GlobalEnvConfig } from '@travetto/base';
|
|
5
|
-
import {
|
|
6
|
-
|
|
7
|
-
import { RenderUtil } from '../src/render/util';
|
|
8
|
-
|
|
9
|
-
type Options = {
|
|
10
|
-
input: OptionConfig<string>;
|
|
11
|
-
outputs: ListOptionConfig<string>;
|
|
12
|
-
watch: OptionConfig<boolean>;
|
|
13
|
-
};
|
|
5
|
+
import { CliCommandShape, CliCommand, CliValidationError } from '@travetto/cli';
|
|
6
|
+
import { MinLength } from '@travetto/schema';
|
|
14
7
|
|
|
15
8
|
/**
|
|
16
9
|
* Command line support for generating module docs.
|
|
17
10
|
*/
|
|
18
|
-
|
|
19
|
-
|
|
11
|
+
@CliCommand()
|
|
12
|
+
export class DocCommand implements CliCommandShape {
|
|
20
13
|
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
14
|
+
/** Input File */
|
|
15
|
+
input = 'DOC.tsx';
|
|
16
|
+
|
|
17
|
+
/** Outputs */
|
|
18
|
+
@MinLength(1)
|
|
19
|
+
outputs: string[] = [];
|
|
20
|
+
|
|
21
|
+
/** Watch? */
|
|
22
|
+
watch = false;
|
|
28
23
|
|
|
29
24
|
envInit(): GlobalEnvConfig {
|
|
30
25
|
return {
|
|
@@ -38,47 +33,60 @@ export class DocCommand extends CliCommand<Options> {
|
|
|
38
33
|
};
|
|
39
34
|
}
|
|
40
35
|
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
if (!(await fs.stat(docFile).catch(() => false))) {
|
|
44
|
-
console.error(`The input ${this.cmd.input} does not exist`);
|
|
45
|
-
return this.exit(1);
|
|
46
|
-
}
|
|
47
|
-
|
|
48
|
-
if (this.cmd.outputs.length === 0) {
|
|
36
|
+
finalize(): void {
|
|
37
|
+
if (this.outputs.length === 0) {
|
|
49
38
|
const workspacePkg = PackageUtil.readPackage(RootIndex.manifest.workspacePath);
|
|
50
|
-
this.
|
|
39
|
+
this.outputs = workspacePkg.travetto?.docOutputs ?? ['README.md'];
|
|
51
40
|
}
|
|
41
|
+
this.input = path.resolve(this.input);
|
|
42
|
+
}
|
|
52
43
|
|
|
53
|
-
|
|
44
|
+
async validate(...args: unknown[]): Promise<CliValidationError | undefined> {
|
|
45
|
+
const docFile = path.resolve(this.input);
|
|
46
|
+
if (!(await fs.stat(docFile).catch(() => false))) {
|
|
47
|
+
return {
|
|
48
|
+
kind: 'required',
|
|
49
|
+
path: 'input',
|
|
50
|
+
message: `The input ${this.input} does not exist`
|
|
51
|
+
};
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
54
|
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
55
|
+
async runWatch(): Promise<void> {
|
|
56
|
+
const args = process.argv.slice(2).filter(x => !/(-w|--watch)/.test(x));
|
|
57
|
+
const stream = watchFolders([{ src: path.dirname(this.input), immediate: true }]);
|
|
58
|
+
for await (const { action, file } of stream) {
|
|
59
|
+
if (action === 'update' && file === this.input) {
|
|
60
|
+
await ExecUtil.spawn('npx', ['trv', ...args], {
|
|
59
61
|
cwd: RootIndex.mainModule.sourcePath,
|
|
60
62
|
env: { TRV_QUIET: '1' },
|
|
61
63
|
stdio: 'inherit', catchAsResult: true
|
|
62
|
-
})
|
|
63
|
-
|
|
64
|
-
persistent: true
|
|
65
|
-
});
|
|
64
|
+
});
|
|
65
|
+
}
|
|
66
66
|
}
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
async render(): Promise<void> {
|
|
70
|
+
const { DocRenderer } = await import('../src/render/renderer.js');
|
|
71
|
+
const ctx = await DocRenderer.get(this.input, RootIndex.manifest);
|
|
72
|
+
const outputs = this.outputs.map(output =>
|
|
73
|
+
output.includes('.') ? [path.extname(output).substring(1), path.resolve(output)] :
|
|
74
|
+
[output, null] as const
|
|
75
|
+
);
|
|
67
76
|
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
process.stdout.write(result);
|
|
77
|
-
}
|
|
77
|
+
for (const [fmt, out] of outputs) {
|
|
78
|
+
const result = await ctx.render(fmt);
|
|
79
|
+
if (out) {
|
|
80
|
+
const finalName = path.resolve(out);
|
|
81
|
+
await fs.writeFile(finalName, result, 'utf8');
|
|
82
|
+
console.log(`Wrote docs ${this.input}: ${finalName}`);
|
|
83
|
+
} else {
|
|
84
|
+
process.stdout.write(result);
|
|
78
85
|
}
|
|
79
|
-
} catch (err) {
|
|
80
|
-
console.error(err);
|
|
81
|
-
this.exit(1);
|
|
82
86
|
}
|
|
83
87
|
}
|
|
88
|
+
|
|
89
|
+
main(): Promise<void> {
|
|
90
|
+
return this.watch ? this.runWatch() : this.render();
|
|
91
|
+
}
|
|
84
92
|
}
|
package/src/doc.ts
DELETED
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
import { AllType, node } from './nodes';
|
|
2
|
-
|
|
3
|
-
export function doc(values: TemplateStringsArray, ...keys: (AllType | Function | string)[]): AllType {
|
|
4
|
-
const out: AllType[] = [];
|
|
5
|
-
|
|
6
|
-
keys.forEach((el, i) =>
|
|
7
|
-
out.push(
|
|
8
|
-
node.Text(values[i] ?? ''),
|
|
9
|
-
typeof el === 'string' ?
|
|
10
|
-
node.Text(el) :
|
|
11
|
-
typeof el === 'function' ? node.Ref(el.name, el) : el
|
|
12
|
-
)
|
|
13
|
-
);
|
|
14
|
-
|
|
15
|
-
if (values.length > keys.length) {
|
|
16
|
-
out.push(node.Text(values[values.length - 1]));
|
|
17
|
-
}
|
|
18
|
-
return out.length === 1 ? out[0] : node.Group(out);
|
|
19
|
-
}
|
|
20
|
-
|
|
21
|
-
Object.assign(doc, node);
|
|
22
|
-
|
|
23
|
-
// eslint-disable-next-line @typescript-eslint/consistent-type-assertions
|
|
24
|
-
export const d = doc as (typeof doc) & (typeof node);
|
package/src/lib.ts
DELETED
|
@@ -1,109 +0,0 @@
|
|
|
1
|
-
import { node } from './nodes';
|
|
2
|
-
|
|
3
|
-
const { Library } = node;
|
|
4
|
-
|
|
5
|
-
// Common
|
|
6
|
-
export const lib = {
|
|
7
|
-
Travetto: Library('Travetto', 'https://travetto.dev'),
|
|
8
|
-
Typescript: Library('Typescript', 'https://typescriptlang.org'),
|
|
9
|
-
Javascript: Library('Javascript', 'https://developer.mozilla.org/en-US/docs/Web/JavaScript'),
|
|
10
|
-
Node: Library('Node', 'https://nodejs.org'),
|
|
11
|
-
TravettoPlugin: Library('VSCode plugin', 'https://marketplace.visualstudio.com/items?itemName=arcsine.travetto-plugin'),
|
|
12
|
-
Npm: Library('Npm', 'https://docs.npmjs.com/downloading-and-installing-node-js-and-npm'),
|
|
13
|
-
Yarn: Library('Yarn', 'https://yarnpg.com'),
|
|
14
|
-
Eslint: Library('ESLint', 'https://eslint.org/'),
|
|
15
|
-
Rollup: Library('Rollup', 'https://rollupjs.org/'),
|
|
16
|
-
|
|
17
|
-
// Module
|
|
18
|
-
CommonJS: Library('CommonJS', 'https://nodejs.org/api/modules.html'),
|
|
19
|
-
EcmascriptModule: Library('Ecmascript Module', 'https://nodejs.org/api/esm.html'),
|
|
20
|
-
PackageJson: Library('Package JSON', 'https://docs.npmjs.com/cli/v9/configuring-npm/package-json'),
|
|
21
|
-
|
|
22
|
-
// Download
|
|
23
|
-
NodeDownload: Library('Node', 'https://nodejs.org/en/download/current/'),
|
|
24
|
-
MongoDownload: Library('Mongodb', 'https://docs.mongodb.com/manual/administration/install-community/'),
|
|
25
|
-
VSCodeDownload: Library('VSCode', 'https://code.visualstudio.com/download'),
|
|
26
|
-
|
|
27
|
-
// Data formats
|
|
28
|
-
YAML: Library('YAML', 'https://en.wikipedia.org/wiki/YAML'),
|
|
29
|
-
JSON: Library('JSON', 'https://www.json.org'),
|
|
30
|
-
Base64: Library('Base64', 'https://en.wikipedia.org/wiki/Base64'),
|
|
31
|
-
TAP: Library('TAP 13', 'https://testanything.org/tap-version-13-specification.html'),
|
|
32
|
-
XUnit: Library('xUnit', 'https://en.wikipedia.org/wiki/XUnit'),
|
|
33
|
-
Markdown: Library('Markdown', 'https://en.wikipedia.org/wiki/Markdown'),
|
|
34
|
-
HTML: Library('HTML', 'https://en.wikipedia.org/wiki/HTML'),
|
|
35
|
-
|
|
36
|
-
// Info
|
|
37
|
-
DependencyInjection: Library('Dependency injection', 'https://en.wikipedia.org/wiki/Dependency_injection'),
|
|
38
|
-
OpenAPI: Library('OpenAPI', 'https://github.com/OAI/OpenAPI-Specification'),
|
|
39
|
-
JSDoc: Library('JSDoc', 'http://usejsdoc.org/about-getting-started.html'),
|
|
40
|
-
CodeLens: Library('CodeLens',
|
|
41
|
-
'https://code.visualstudio.com/api/language-extensions/programmatic-language-features#codelens-show-actionable-context-information-within-source-code'),
|
|
42
|
-
ORM: Library('Object Relationship Mapping', 'https://en.wikipedia.org/wiki/Object%E2%80%93relational_mapping'),
|
|
43
|
-
UUID: Library('UUID', 'https://en.wikipedia.org/wiki/Universally_unique_identifier'),
|
|
44
|
-
|
|
45
|
-
// Node
|
|
46
|
-
ChildProcess: Library('child_process', 'https://nodejs.org/api/child_process.html'),
|
|
47
|
-
AsyncHooks: Library('async_hooks', 'https://nodejs.org/api/async_hooks.html'),
|
|
48
|
-
Http: Library('http', 'https://nodejs.org/api/http.html'),
|
|
49
|
-
Path: Library('http', 'https://nodejs.org/api/path.html'),
|
|
50
|
-
Https: Library('https', 'https://nodejs.org/api/https.html'),
|
|
51
|
-
Console: Library('console', 'https://nodejs.org/api/console.html'),
|
|
52
|
-
Assert: Library('assert', 'https://nodejs.org/api/assert.html'),
|
|
53
|
-
|
|
54
|
-
// Cloud
|
|
55
|
-
AwsCloudwatch: Library('AWS Cloudwatch', 'https://aws.amazon.com/cloudwatch/'),
|
|
56
|
-
|
|
57
|
-
// Utils
|
|
58
|
-
Lodash: Library('lodash', 'https://lodash.com'),
|
|
59
|
-
NodeForge: Library('node-forge', 'https://www.npmjs.com/package/node-forge'),
|
|
60
|
-
Docker: Library('docker', 'https://www.docker.com/community-edition'),
|
|
61
|
-
Debug: Library('debug', 'https://www.npmjs.com/package/debug'),
|
|
62
|
-
OpenAPIGenerator: Library('OpenAPI client generation tools', 'https://github.com/OpenAPITools/openapi-generator'),
|
|
63
|
-
Gaze: Library('gaze', 'https://github.com/shama/gaze'),
|
|
64
|
-
Chokidar: Library('chokidar', 'https://github.com/paulmillr/chokidar'),
|
|
65
|
-
Faker: Library('faker', 'https://github.com/faker-js/faker'),
|
|
66
|
-
Yeoman: Library('yeoman', 'http://yeoman.io'),
|
|
67
|
-
Commander: Library('commander', 'https://www.npmjs.com/package/commander'),
|
|
68
|
-
Curl: Library('curl', 'https://curl.haxx.se/'),
|
|
69
|
-
Fetch: Library('fetch', 'https://www.npmjs.com/package/node-fetch'),
|
|
70
|
-
ParcelWatcher: Library('fetch', 'https://www.npmjs.com/package/@parcel/watcher'),
|
|
71
|
-
|
|
72
|
-
// JWT
|
|
73
|
-
JWT: Library('JWT', 'https://jwt.io/'),
|
|
74
|
-
NodeJWT: Library('node-jsonwebtoken', 'https://github.com/auth0/node-jsonwebtoken'),
|
|
75
|
-
|
|
76
|
-
// Email
|
|
77
|
-
NodeMailer: Library('nodemailer', 'https://nodemailer.com/about/'),
|
|
78
|
-
Inky: Library('inky', 'https://github.com/zurb/inky'),
|
|
79
|
-
Sass: Library('sass', 'https://github.com/sass/dart-sass'),
|
|
80
|
-
Mustache: Library('mustache', 'https://github.com/janl/mustache.js/'),
|
|
81
|
-
|
|
82
|
-
// Image
|
|
83
|
-
ImageMagick: Library('ImageMagick', 'https://imagemagick.org/index.php'),
|
|
84
|
-
PngQuant: Library('pngquant', 'https://pngquant.org/'),
|
|
85
|
-
JpegOptim: Library('Jpegoptim', 'https://github.com/tjko/jpegoptim'),
|
|
86
|
-
|
|
87
|
-
// Dbs
|
|
88
|
-
MongoDB: Library('mongodb', 'https://mongodb.com'),
|
|
89
|
-
S3: Library('s3', 'https://aws.amazon.com/documentation/s3/'),
|
|
90
|
-
Redis: Library('redis', 'https://redis.io'),
|
|
91
|
-
Memcached: Library('memcached', 'https://memcached.org'),
|
|
92
|
-
Elasticsearch: Library('elasticsearch', 'https://elastic.co'),
|
|
93
|
-
SQL: Library('SQL', 'https://en.wikipedia.org/wiki/SQL'),
|
|
94
|
-
MySQL: Library('MySQL', 'https://www.mysql.com/'),
|
|
95
|
-
Postgres: Library('Postgres', 'https://postgresql.org'),
|
|
96
|
-
DynamoDB: Library('DynamoDB', 'https://aws.amazon.com/dynamodb/'),
|
|
97
|
-
Firestore: Library('Firestore', 'https://firebase.google.com/docs/firestore'),
|
|
98
|
-
SQLite: Library('SQLite', 'https://www.sqlite.org/'),
|
|
99
|
-
|
|
100
|
-
// Rest
|
|
101
|
-
Express: Library('express', 'https://expressjs.com'),
|
|
102
|
-
Passport: Library('passport', 'http://passportjs.org'),
|
|
103
|
-
Busboy: Library('busboy', 'https://github.com/mscdex/busboy'),
|
|
104
|
-
Cookies: Library('cookies', 'https://www.npmjs.com/package/cookies'),
|
|
105
|
-
ServerlessExpress: Library('aws-serverless-express', 'https://github.com/awslabs/aws-serverless-express/blob/master/README.md'),
|
|
106
|
-
AwsLambdaFastify: Library('@fastify/aws-lambda', 'https://github.com/fastify/aws-lambda-fastify/blob/master/README.md'),
|
|
107
|
-
Fastify: Library('fastify', 'https://www.fastify.io/'),
|
|
108
|
-
Koa: Library('koa', 'https://koajs.com/'),
|
|
109
|
-
};
|
package/src/mod-mapping.ts
DELETED
|
@@ -1,258 +0,0 @@
|
|
|
1
|
-
export const MOD_MAPPING = {
|
|
2
|
-
App: {
|
|
3
|
-
name:'@travetto/app', folder:'@travetto/app', displayName: 'Application',
|
|
4
|
-
description: 'Application registration/management and run support.'
|
|
5
|
-
},
|
|
6
|
-
Asset: {
|
|
7
|
-
name:'@travetto/asset', folder:'@travetto/asset', displayName: 'Asset',
|
|
8
|
-
description: 'Modular library for storing and retrieving binary assets'
|
|
9
|
-
},
|
|
10
|
-
AssetRest: {
|
|
11
|
-
name:'@travetto/asset-rest', folder:'@travetto/asset-rest', displayName: 'Asset Rest Support',
|
|
12
|
-
description: 'Provides integration between the travetto asset and rest module.'
|
|
13
|
-
},
|
|
14
|
-
Auth: {
|
|
15
|
-
name:'@travetto/auth', folder:'@travetto/auth', displayName: 'Authentication',
|
|
16
|
-
description: 'Authentication scaffolding for the Travetto framework'
|
|
17
|
-
},
|
|
18
|
-
AuthModel: {
|
|
19
|
-
name:'@travetto/auth-model', folder:'@travetto/auth-model', displayName: 'Authentication Model',
|
|
20
|
-
description: 'Authentication model support for the Travetto framework'
|
|
21
|
-
},
|
|
22
|
-
AuthRest: {
|
|
23
|
-
name:'@travetto/auth-rest', folder:'@travetto/auth-rest', displayName: 'Rest Auth',
|
|
24
|
-
description: 'Rest authentication integration support for the Travetto framework'
|
|
25
|
-
},
|
|
26
|
-
AuthRestContext: {
|
|
27
|
-
name:'@travetto/auth-rest-context', folder:'@travetto/auth-rest-context', displayName: 'Rest Auth Context',
|
|
28
|
-
description: 'Rest authentication context integration support for the Travetto framework'
|
|
29
|
-
},
|
|
30
|
-
AuthRestJwt: {
|
|
31
|
-
name:'@travetto/auth-rest-jwt', folder:'@travetto/auth-rest-jwt', displayName: 'Rest Auth JWT',
|
|
32
|
-
description: 'Rest authentication JWT integration support for the Travetto framework'
|
|
33
|
-
},
|
|
34
|
-
AuthRestPassport: {
|
|
35
|
-
name:'@travetto/auth-rest-passport', folder:'@travetto/auth-rest-passport', displayName: 'Rest Auth Passport',
|
|
36
|
-
description: 'Rest authentication integration support for the Travetto framework'
|
|
37
|
-
},
|
|
38
|
-
AuthRestSession: {
|
|
39
|
-
name:'@travetto/auth-rest-session', folder:'@travetto/auth-rest-session', displayName: 'Rest Auth Session',
|
|
40
|
-
description: 'Rest authentication session integration support for the Travetto framework'
|
|
41
|
-
},
|
|
42
|
-
Base: {
|
|
43
|
-
name:'@travetto/base', folder:'@travetto/base', displayName: 'Base',
|
|
44
|
-
description: 'Environment config and common utilities for travetto applications.'
|
|
45
|
-
},
|
|
46
|
-
Cache: {
|
|
47
|
-
name:'@travetto/cache', folder:'@travetto/cache', displayName: 'Caching',
|
|
48
|
-
description: 'Caching functionality with decorators for declarative use.'
|
|
49
|
-
},
|
|
50
|
-
Cli: {
|
|
51
|
-
name:'@travetto/cli', folder:'@travetto/cli', displayName: 'Command Line Interface',
|
|
52
|
-
description: 'CLI infrastructure for Travetto framework'
|
|
53
|
-
},
|
|
54
|
-
Command: {
|
|
55
|
-
name:'@travetto/command', folder:'@travetto/command', displayName: 'Command',
|
|
56
|
-
description: 'Support for executing complex commands at runtime.'
|
|
57
|
-
},
|
|
58
|
-
Compiler: {
|
|
59
|
-
name:'@travetto/compiler', folder:'@travetto/compiler', displayName: 'Compiler',
|
|
60
|
-
description: 'The compiler infrastructure for the Travetto framework'
|
|
61
|
-
},
|
|
62
|
-
Config: {
|
|
63
|
-
name:'@travetto/config', folder:'@travetto/config', displayName: 'Configuration',
|
|
64
|
-
description: 'Configuration support'
|
|
65
|
-
},
|
|
66
|
-
Context: {
|
|
67
|
-
name:'@travetto/context', folder:'@travetto/context', displayName: 'Async Context',
|
|
68
|
-
description: 'Async-aware state management, maintaining context across asynchronous calls.'
|
|
69
|
-
},
|
|
70
|
-
Di: {
|
|
71
|
-
name:'@travetto/di', folder:'@travetto/di', displayName: 'Dependency Injection',
|
|
72
|
-
description: 'Dependency registration/management and injection support.'
|
|
73
|
-
},
|
|
74
|
-
Doc: {
|
|
75
|
-
name:'@travetto/doc', folder:'@travetto/doc', displayName: 'Documentation',
|
|
76
|
-
description: 'Documentation support for the Travetto framework'
|
|
77
|
-
},
|
|
78
|
-
Email: {
|
|
79
|
-
name:'@travetto/email', folder:'@travetto/email', displayName: 'Email',
|
|
80
|
-
description: 'Email transmission module.'
|
|
81
|
-
},
|
|
82
|
-
EmailNodemailer: {
|
|
83
|
-
name:'@travetto/email-nodemailer', folder:'@travetto/email-nodemailer', displayName: 'Email Nodemailer Support',
|
|
84
|
-
description: 'Email transmission module.'
|
|
85
|
-
},
|
|
86
|
-
EmailTemplate: {
|
|
87
|
-
name:'@travetto/email-template', folder:'@travetto/email-template', displayName: 'Email Templating',
|
|
88
|
-
description: 'Email templating module'
|
|
89
|
-
},
|
|
90
|
-
Eslint: {
|
|
91
|
-
name:'@travetto/eslint', folder:'@travetto/eslint', displayName: 'ES Linting Rules',
|
|
92
|
-
description: 'ES Linting Rules'
|
|
93
|
-
},
|
|
94
|
-
Image: {
|
|
95
|
-
name:'@travetto/image', folder:'@travetto/image', displayName: 'Image',
|
|
96
|
-
description: 'Image support, resizing, and optimization'
|
|
97
|
-
},
|
|
98
|
-
Jwt: {
|
|
99
|
-
name:'@travetto/jwt', folder:'@travetto/jwt', displayName: 'JWT',
|
|
100
|
-
description: 'JSON Web Token implementation'
|
|
101
|
-
},
|
|
102
|
-
Log: {
|
|
103
|
-
name:'@travetto/log', folder:'@travetto/log', displayName: 'Logging',
|
|
104
|
-
description: 'Logging framework that integrates at the console.log level.'
|
|
105
|
-
},
|
|
106
|
-
Manifest: {
|
|
107
|
-
name:'@travetto/manifest', folder:'@travetto/manifest', displayName: 'Manifest',
|
|
108
|
-
description: 'Support for project indexing, manifesting, along with file watching'
|
|
109
|
-
},
|
|
110
|
-
Model: {
|
|
111
|
-
name:'@travetto/model', folder:'@travetto/model', displayName: 'Data Modeling Support',
|
|
112
|
-
description: 'Datastore abstraction for core operations.'
|
|
113
|
-
},
|
|
114
|
-
ModelDynamodb: {
|
|
115
|
-
name:'@travetto/model-dynamodb', folder:'@travetto/model-dynamodb', displayName: 'DynamoDB Model Support',
|
|
116
|
-
description: 'DynamoDB backing for the travetto model module.'
|
|
117
|
-
},
|
|
118
|
-
ModelElasticsearch: {
|
|
119
|
-
name:'@travetto/model-elasticsearch', folder:'@travetto/model-elasticsearch', displayName: 'Elasticsearch Model Source',
|
|
120
|
-
description: 'Elasticsearch backing for the travetto model module, with real-time modeling support for Elasticsearch mappings.'
|
|
121
|
-
},
|
|
122
|
-
ModelFirestore: {
|
|
123
|
-
name:'@travetto/model-firestore', folder:'@travetto/model-firestore', displayName: 'Firestore Model Support',
|
|
124
|
-
description: 'Firestore backing for the travetto model module.'
|
|
125
|
-
},
|
|
126
|
-
ModelMongo: {
|
|
127
|
-
name:'@travetto/model-mongo', folder:'@travetto/model-mongo', displayName: 'MongoDB Model Support',
|
|
128
|
-
description: 'Mongo backing for the travetto model module.'
|
|
129
|
-
},
|
|
130
|
-
ModelMysql: {
|
|
131
|
-
name:'@travetto/model-mysql', folder:'@travetto/model-mysql', displayName: 'MySQL Model Service',
|
|
132
|
-
description: 'MySQL backing for the travetto model module, with real-time modeling support for SQL schemas.'
|
|
133
|
-
},
|
|
134
|
-
ModelPostgres: {
|
|
135
|
-
name:'@travetto/model-postgres', folder:'@travetto/model-postgres', displayName: 'PostgreSQL Model Service',
|
|
136
|
-
description: 'PostgreSQL backing for the travetto model module, with real-time modeling support for SQL schemas.'
|
|
137
|
-
},
|
|
138
|
-
ModelQuery: {
|
|
139
|
-
name:'@travetto/model-query', folder:'@travetto/model-query', displayName: 'Data Model Querying',
|
|
140
|
-
description: 'Datastore abstraction for advanced query support.'
|
|
141
|
-
},
|
|
142
|
-
ModelRedis: {
|
|
143
|
-
name:'@travetto/model-redis', folder:'@travetto/model-redis', displayName: 'Redis Model Support',
|
|
144
|
-
description: 'Redis backing for the travetto model module.'
|
|
145
|
-
},
|
|
146
|
-
ModelS3: {
|
|
147
|
-
name:'@travetto/model-s3', folder:'@travetto/model-s3', displayName: 'S3 Model Support',
|
|
148
|
-
description: 'S3 backing for the travetto model module.'
|
|
149
|
-
},
|
|
150
|
-
ModelSql: {
|
|
151
|
-
name:'@travetto/model-sql', folder:'@travetto/model-sql', displayName: 'SQL Model Service',
|
|
152
|
-
description: 'SQL backing for the travetto model module, with real-time modeling support for SQL schemas.'
|
|
153
|
-
},
|
|
154
|
-
ModelSqlite: {
|
|
155
|
-
name:'@travetto/model-sqlite', folder:'@travetto/model-sqlite', displayName: 'SQLite Model Service',
|
|
156
|
-
description: 'SQLite backing for the travetto model module, with real-time modeling support for SQL schemas.'
|
|
157
|
-
},
|
|
158
|
-
Openapi: {
|
|
159
|
-
name:'@travetto/openapi', folder:'@travetto/openapi', displayName: 'OpenAPI Specification',
|
|
160
|
-
description: 'OpenAPI integration support for the Travetto framework'
|
|
161
|
-
},
|
|
162
|
-
Overview: {
|
|
163
|
-
name:'@travetto/overview', folder:'@travetto/overview', displayName: 'Overview Docs',
|
|
164
|
-
description: 'Documentation overview'
|
|
165
|
-
},
|
|
166
|
-
Pack: {
|
|
167
|
-
name:'@travetto/pack', folder:'@travetto/pack', displayName: 'Pack',
|
|
168
|
-
description: 'Code packing utilities'
|
|
169
|
-
},
|
|
170
|
-
Registry: {
|
|
171
|
-
name:'@travetto/registry', folder:'@travetto/registry', displayName: 'Registry',
|
|
172
|
-
description: 'Patterns and utilities for handling registration of metadata and functionality for run-time use'
|
|
173
|
-
},
|
|
174
|
-
Repo: {
|
|
175
|
-
name:'@travetto/repo', folder:'@travetto/repo', displayName: 'Repo',
|
|
176
|
-
description: 'Monorepo utilities'
|
|
177
|
-
},
|
|
178
|
-
Rest: {
|
|
179
|
-
name:'@travetto/rest', folder:'@travetto/rest', displayName: 'RESTful API',
|
|
180
|
-
description: 'Declarative api for RESTful APIs with support for the dependency injection module.'
|
|
181
|
-
},
|
|
182
|
-
RestAwsLambda: {
|
|
183
|
-
name:'@travetto/rest-aws-lambda', folder:'@travetto/rest-aws-lambda', displayName: 'RESTful AWS Lambda',
|
|
184
|
-
description: 'RESTful APIs entry point support for AWS Lambdas.'
|
|
185
|
-
},
|
|
186
|
-
RestExpress: {
|
|
187
|
-
name:'@travetto/rest-express', folder:'@travetto/rest-express', displayName: 'Express REST Source',
|
|
188
|
-
description: 'Express provider for the travetto rest module.'
|
|
189
|
-
},
|
|
190
|
-
RestExpressLambda: {
|
|
191
|
-
name:'@travetto/rest-express-lambda', folder:'@travetto/rest-express-lambda', displayName: 'Express REST AWS Lambda Source',
|
|
192
|
-
description: 'Express AWS Lambda provider for the travetto rest module.'
|
|
193
|
-
},
|
|
194
|
-
RestFastify: {
|
|
195
|
-
name:'@travetto/rest-fastify', folder:'@travetto/rest-fastify', displayName: 'Fastify REST Source',
|
|
196
|
-
description: 'Fastify provider for the travetto rest module.'
|
|
197
|
-
},
|
|
198
|
-
RestFastifyLambda: {
|
|
199
|
-
name:'@travetto/rest-fastify-lambda', folder:'@travetto/rest-fastify-lambda', displayName: 'Fastify REST AWS Lambda Source',
|
|
200
|
-
description: 'Fastify AWS Lambda provider for the travetto rest module.'
|
|
201
|
-
},
|
|
202
|
-
RestKoa: {
|
|
203
|
-
name:'@travetto/rest-koa', folder:'@travetto/rest-koa', displayName: 'Koa REST Source',
|
|
204
|
-
description: 'Koa provider for the travetto rest module.'
|
|
205
|
-
},
|
|
206
|
-
RestKoaLambda: {
|
|
207
|
-
name:'@travetto/rest-koa-lambda', folder:'@travetto/rest-koa-lambda', displayName: 'Koa REST AWS Lambda Source',
|
|
208
|
-
description: 'Koa provider for the travetto rest module.'
|
|
209
|
-
},
|
|
210
|
-
RestModel: {
|
|
211
|
-
name:'@travetto/rest-model', folder:'@travetto/rest-model', displayName: 'RESTful Model Routes',
|
|
212
|
-
description: 'RESTful support for generating APIs from Model classes.'
|
|
213
|
-
},
|
|
214
|
-
RestModelQuery: {
|
|
215
|
-
name:'@travetto/rest-model-query', folder:'@travetto/rest-model-query', displayName: 'RESTful Model Query Routes',
|
|
216
|
-
description: 'RESTful support for generating query APIs from Model classes.'
|
|
217
|
-
},
|
|
218
|
-
RestSession: {
|
|
219
|
-
name:'@travetto/rest-session', folder:'@travetto/rest-session', displayName: 'REST Session',
|
|
220
|
-
description: 'Session provider for the travetto rest module.'
|
|
221
|
-
},
|
|
222
|
-
Scaffold: {
|
|
223
|
-
name:'@travetto/scaffold', folder:'@travetto/scaffold', displayName: 'App Scaffold',
|
|
224
|
-
description: 'App Scaffold for the Travetto framework'
|
|
225
|
-
},
|
|
226
|
-
Schema: {
|
|
227
|
-
name:'@travetto/schema', folder:'@travetto/schema', displayName: 'Schema',
|
|
228
|
-
description: 'Data type registry for runtime validation, reflection and binding.'
|
|
229
|
-
},
|
|
230
|
-
SchemaFaker: {
|
|
231
|
-
name:'@travetto/schema-faker', folder:'@travetto/schema-faker', displayName: 'Schema Faker',
|
|
232
|
-
description: 'Data generation for schema-registered objects.'
|
|
233
|
-
},
|
|
234
|
-
Terminal: {
|
|
235
|
-
name:'@travetto/terminal', folder:'@travetto/terminal', displayName: 'Terminal',
|
|
236
|
-
description: 'General terminal support'
|
|
237
|
-
},
|
|
238
|
-
Test: {
|
|
239
|
-
name:'@travetto/test', folder:'@travetto/test', displayName: 'Testing',
|
|
240
|
-
description: 'Declarative test framework'
|
|
241
|
-
},
|
|
242
|
-
TodoApp: {
|
|
243
|
-
name:'@travetto/todo-app', folder:'@travetto/todo-app', displayName: 'Todo Application',
|
|
244
|
-
description: ''
|
|
245
|
-
},
|
|
246
|
-
Transformer: {
|
|
247
|
-
name:'@travetto/transformer', folder:'@travetto/transformer', displayName: 'Transformation',
|
|
248
|
-
description: 'Functionality for AST transformations, with transformer registration, and general utils'
|
|
249
|
-
},
|
|
250
|
-
Worker: {
|
|
251
|
-
name:'@travetto/worker', folder:'@travetto/worker', displayName: 'Worker',
|
|
252
|
-
description: 'Process management utilities, with a focus on inter-process communication'
|
|
253
|
-
},
|
|
254
|
-
Yaml: {
|
|
255
|
-
name:'@travetto/yaml', folder:'@travetto/yaml', displayName: 'YAML',
|
|
256
|
-
description: 'Simple YAML support, provides only clean subset of yaml'
|
|
257
|
-
}
|
|
258
|
-
};
|
package/src/mod.ts
DELETED