diff options
author | lutangar <johan.dufour@gmail.com> | 2021-11-09 13:49:08 +0100 |
---|---|---|
committer | Chocobozzz <chocobozzz@cpy.re> | 2021-12-16 10:08:43 +0100 |
commit | 8b03e2ce1a2098261de2f729f660b1ae2a320b65 (patch) | |
tree | ca4770cf86c9c54814dbb62bfc95ef38661646b2 /client | |
parent | 06aad80165d09a8863ab8103149a8ff518b10641 (diff) | |
download | PeerTube-8b03e2ce1a2098261de2f729f660b1ae2a320b65.tar.gz PeerTube-8b03e2ce1a2098261de2f729f660b1ae2a320b65.tar.zst PeerTube-8b03e2ce1a2098261de2f729f660b1ae2a320b65.zip |
feat(types): create peertube-types package
Create dedicated Typescript "types" configuration file for each "projects".
Create a types folder which includes every useful ts definition:
- client
- server
- shared
Add tooling to create a proper package, extract dependencies, etc...
Add CI Github task.
refactor(types): publish types package in release script
Diffstat (limited to 'client')
-rw-r--r-- | client/src/index.ts | 1 | ||||
-rw-r--r-- | client/src/types/index.ts | 6 | ||||
-rw-r--r-- | client/tsconfig.json | 1 | ||||
-rw-r--r-- | client/tsconfig.types.json | 18 |
4 files changed, 26 insertions, 0 deletions
diff --git a/client/src/index.ts b/client/src/index.ts new file mode 100644 index 000000000..c9f6f047d --- /dev/null +++ b/client/src/index.ts | |||
@@ -0,0 +1 @@ | |||
export * from './types' | |||
diff --git a/client/src/types/index.ts b/client/src/types/index.ts new file mode 100644 index 000000000..5508515fd --- /dev/null +++ b/client/src/types/index.ts | |||
@@ -0,0 +1,6 @@ | |||
1 | export * from './client-script.model' | ||
2 | export * from './job-state-client.type' | ||
3 | export * from './job-type-client.type' | ||
4 | export * from './link.type' | ||
5 | export * from './register-client-option.model' | ||
6 | export * from './select-options-item.model' | ||
diff --git a/client/tsconfig.json b/client/tsconfig.json index 56e7b68ee..d68b3058e 100644 --- a/client/tsconfig.json +++ b/client/tsconfig.json | |||
@@ -13,6 +13,7 @@ | |||
13 | "suppressImplicitAnyIndexErrors":true, | 13 | "suppressImplicitAnyIndexErrors":true, |
14 | "alwaysStrict": true, | 14 | "alwaysStrict": true, |
15 | "importHelpers": true, | 15 | "importHelpers": true, |
16 | "allowSyntheticDefaultImports": true, | ||
16 | "strictBindCallApply": true, | 17 | "strictBindCallApply": true, |
17 | "target": "es2015", | 18 | "target": "es2015", |
18 | "typeRoots": [ | 19 | "typeRoots": [ |
diff --git a/client/tsconfig.types.json b/client/tsconfig.types.json new file mode 100644 index 000000000..35a5e92cc --- /dev/null +++ b/client/tsconfig.types.json | |||
@@ -0,0 +1,18 @@ | |||
1 | { | ||
2 | "extends": "./tsconfig.json", | ||
3 | "compilerOptions": { | ||
4 | "stripInternal": true, | ||
5 | "removeComments": false, | ||
6 | "declaration": true, | ||
7 | "outDir": "../types/client/", | ||
8 | "emitDeclarationOnly": true, | ||
9 | "composite": true, | ||
10 | "rootDir": "src/", | ||
11 | "tsBuildInfoFile": "../types/client.tsbuildinfo" | ||
12 | }, | ||
13 | "references": [ | ||
14 | { "path": "../shared/tsconfig.types.json" } | ||
15 | ], | ||
16 | "files": ["src/index.ts"], | ||
17 | "include": ["src/index.ts", "src/types/**/*"] | ||
18 | } | ||